/*
Theme Name: Keystone Handyman
Theme URI: https://keystonehandyman.llc/
Author: Keystone Handyman LLC
Description: Custom editable WordPress theme converted from the approved Keystone Handyman website.
Version: 1.0.0
Text Domain: keystone-handyman
*/

:root{--black:#060606;--white:#fbfaf8;--gold:#c99b43;--line:#ddd9d1;--ink:#111;--muted:#5f5a54}*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--ink);font:16px Arial,Helvetica,sans-serif;line-height:1.55}header{position:sticky;top:0;z-index:8;min-height:82px;padding:0 max(30px,calc((100vw - 1360px)/2));background:#060606;display:flex;align-items:center;gap:30px;color:#fff}.brand{color:#fff;text-decoration:none}.brand-logo{display:block;width:208px;height:auto;max-height:48px;object-fit:contain}nav{display:flex;gap:28px;margin-left:auto}nav a,footer a{color:inherit;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.02em}.button,.outline{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 21px;background:var(--gold);color:#17120a;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;border:0}.dark-button{background:#090909;color:#fff}.outline{background:transparent;border:1px solid var(--gold);color:var(--gold)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;line-height:1.02}.eyebrow{margin:0 0 12px;color:#a97826;font-size:11px!important;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.center{text-align:center}.showcase-hero{display:grid;grid-template-columns:minmax(360px,.86fr) minmax(440px,1fr);min-height:555px;border-bottom:1px solid var(--line)}.showcase-copy{display:flex;flex-direction:column;justify-content:center;padding:70px max(34px,calc((100vw - 1360px)/2)) 70px max(34px,calc((100vw - 1360px)/2));background:#fff}.showcase-copy h1{font-size:clamp(50px,5.4vw,78px);margin:0 0 24px}.showcase-copy p:not(.eyebrow){max-width:440px;margin:0 0 30px;color:#4e4942;font-size:17px}.gold-rule{width:46px;height:2px;background:var(--gold);margin:0 0 27px}.showcase-hero>img{width:100%;height:100%;min-height:555px;object-fit:cover;object-position:center}.service-overview,.popular,.services-intro,.service-grid-wrap,.referral-panel,.package-cta{padding:66px max(30px,calc((100vw - 1360px)/2))}.service-overview h2,.popular h2{margin:0 0 28px;text-align:center;font-size:42px}.category-row{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line)}.category-row article{min-height:160px;padding:23px 17px;border-right:1px solid var(--line);text-align:center;display:flex;flex-direction:column;justify-content:center;gap:11px}.category-row article:last-child{border:0}.category-row b{font-size:16px}.category-row span{color:var(--muted);font-size:13px}.popular{padding-top:32px}.section-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.section-line h2{margin:0;text-align:left}.section-line a{color:#a97826;text-decoration:none;font-size:13px;font-weight:800}.photo-row{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.photo-row a{border:1px solid var(--line);color:var(--ink);text-decoration:none;background:#fff}.photo-row img{display:block;width:100%;height:210px;object-fit:cover}.photo-row b{display:block;padding:14px 13px 18px;text-align:center;font:700 17px Georgia,serif}.trust-panel{padding:54px max(30px,calc((100vw - 1360px)/2));display:grid;grid-template-columns:.9fr 1.6fr;gap:56px;background:#070707;color:#fff}.trust-panel h2{font-size:48px;margin:0 0 17px}.trust-panel>div>p:not(.eyebrow){color:#d7d2ca;max-width:360px}.trust-points{display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.trust-points div{min-height:142px;border-left:1px solid #5a5140;padding:14px 18px;display:flex;flex-direction:column;justify-content:center}.trust-points b{color:var(--gold);font:28px Georgia,serif}.trust-points span{font-size:13px;color:#ddd}.services-intro{text-align:center;padding-bottom:28px}.services-intro h1{font-size:clamp(54px,6vw,80px);margin:0 0 14px}.services-intro>p:last-child{font-size:18px;color:var(--muted);margin:0}.service-grid-wrap{padding-top:10px}.service-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-photo-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 15px 20px;background:#fff}.service-photo-grid img{display:block;width:100%;height:255px;object-fit:cover;margin-bottom:16px}.service-photo-grid h2{font-size:28px;margin:0 0 14px}.service-photo-grid ul{margin:0;padding-left:19px;font-size:14px;line-height:1.9}.referral-panel{margin:0 max(30px,calc((100vw - 1360px)/2));padding:32px;border:1px solid #1a1a1a;text-align:center}.referral-panel h2{font-size:39px;margin:0 0 28px}.referral-panel>div{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.referral-panel b{padding:20px 8px;border-right:1px solid var(--line);font-size:13px}.referral-panel b:last-child{border:0}.referral-panel p:last-child{margin:20px 0 0;color:var(--muted)}.package-cta{margin:66px max(30px,calc((100vw - 1360px)/2));padding:44px;text-align:center;background:#f0eeea}.package-cta h2{font-size:46px;margin:0 0 22px}footer{background:var(--black);color:#fff;padding:62px max(30px,calc((100vw - 1360px)/2)) 22px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:28px}footer .brand-logo{width:214px;max-height:52px}footer b{display:block;color:var(--gold);font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}footer a{display:block;color:#ddd;margin:8px 0}footer p{color:#d5d0c8;font-size:14px}.brand-tagline{margin:14px 0 0;color:#ddd;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.copyright{grid-column:1/-1;border-top:1px solid #383632;padding-top:19px;color:#b9b3ac}@media(max-width:980px){nav{gap:14px}.showcase-hero{grid-template-columns:1fr}.showcase-copy{padding:64px 34px}.showcase-hero>img{min-height:420px;height:480px}.category-row{grid-template-columns:repeat(3,1fr)}.category-row article:nth-child(3){border-right:0}.category-row article:nth-child(-n+3){border-bottom:1px solid var(--line)}.trust-panel{grid-template-columns:1fr}.service-photo-grid{grid-template-columns:repeat(2,1fr)}.referral-panel>div{grid-template-columns:repeat(4,1fr)}.photo-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){header{min-height:70px;padding:0 18px}.brand-logo{width:158px;max-height:38px}nav{display:none}.showcase-copy,.service-overview,.popular,.services-intro,.service-grid-wrap{padding-left:18px;padding-right:18px}.category-row,.service-photo-grid,.photo-row,.trust-points,footer{grid-template-columns:1fr}.category-row article,.category-row article:nth-child(3){border-right:0;border-bottom:1px solid var(--line)}.category-row article:last-child{border-bottom:0}.photo-row img{height:230px}.trust-panel{padding:45px 18px}.trust-points div{border-left:0;border-top:1px solid #5a5140}.referral-panel,.package-cta{margin:0 18px;padding:28px 18px}.referral-panel>div{grid-template-columns:1fr}.referral-panel b{border-right:0;border-bottom:1px solid var(--line)}.services-intro h1{font-size:49px}.service-photo-grid img{height:235px}footer{padding:50px 18px 22px}}

/* Site-wide Keystone footer */
.site-footer{display:block!important;padding:0!important;background:#070707;color:#fff}.footer-cta{max-width:1280px;margin:0 auto;padding:15px 0;display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:22px;background:#f4f1eb;color:#16130f}.cta-icon{width:58px;height:58px;margin-left:28px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:25px}.footer-cta h2{margin:0 0 3px;font-size:30px}.footer-cta p{margin:0;font-size:14px;color:#403b35}.footer-cta .button{margin-right:28px;padding:15px 25px;white-space:nowrap}.footer-main{max-width:1280px;margin:0 auto;padding:48px 28px 38px;display:grid;grid-template-columns:1.25fr .8fr 1.25fr 1.15fr;gap:30px}.footer-main>div+div{border-left:1px solid #3b3935;padding-left:27px}.footer-main b{display:block;margin-bottom:17px;color:var(--gold);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.footer-main a{display:block;color:#fff;text-decoration:none;font-size:14px;margin:10px 0}.footer-main p{color:#ded9d1;font-size:14px;line-height:1.48;margin:0 0 14px}.footer-main .brand-logo{width:205px;max-height:52px}.footer-brand p{max-width:235px;margin-top:17px}.footer-rule{display:block;width:130px;border-top:1px solid var(--gold);margin:21px 0}.footer-main .footer-link{color:var(--gold);font-weight:800;margin-top:15px}.footer-bottom{max-width:1280px;margin:0 auto;padding:19px 28px;border-top:1px solid #3b3935;display:flex;justify-content:space-between;gap:18px;color:#e1ddd7;font-size:12px}.footer-bottom a{color:inherit;text-decoration:none}.footer-bottom i{display:inline-block;height:13px;border-left:1px solid #706d68;margin:0 13px;vertical-align:middle}@media(max-width:820px){.footer-cta{margin:0 18px;grid-template-columns:52px 1fr;padding:16px}.footer-cta .button{grid-column:1/-1;margin:0;width:100%}.cta-icon{width:48px;height:48px;margin:0;font-size:20px}.footer-cta h2{font-size:24px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div+div{border-left:0;padding-left:0}.footer-bottom{flex-direction:column}}@media(max-width:520px){.footer-main{grid-template-columns:1fr;padding:38px 22px}.footer-cta{grid-template-columns:1fr;text-align:center}.cta-icon{margin:auto}.footer-main .brand-logo{width:185px}}

header .button{background:#070707;color:var(--gold);border:1px solid var(--gold)}header .button:hover{background:var(--gold);color:#080704}

/* Five-year Keystone guarantee badge and image framing */
.trust-points{grid-template-columns:repeat(3,1fr) 1.25fr}.guarantee-badge{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:190px!important;padding:12px 10px!important;border-left:1px solid #5a5140!important;text-align:center;overflow:hidden}.guarantee-badge img{position:absolute;top:11px;width:54px;height:54px;object-fit:contain}.guarantee-badge .badge-five{position:relative;margin-top:32px;color:var(--gold);font:48px Georgia,serif;line-height:.75;z-index:1}.guarantee-badge .badge-five span{display:block;margin-top:9px;font:700 10px Arial;letter-spacing:.18em}.guarantee-badge strong{position:absolute;bottom:30px;color:var(--gold);font:700 11px Arial;letter-spacing:.08em;line-height:1.35}.guarantee-badge small{position:absolute;bottom:8px;color:#d8d2c8;font-size:9px}.laurel{position:absolute;top:70px;color:var(--gold);font:47px Georgia,serif;line-height:1}.laurel.left{left:12px;transform:rotate(-38deg)}.laurel.right{right:12px;transform:scaleX(-1) rotate(-38deg)}.showcase-hero>img,.photo-row img,.service-photo-grid img{object-position:center top}@media(max-width:980px){.trust-points{grid-template-columns:repeat(2,1fr)}.guarantee-badge{border-top:1px solid #5a5140}}@media(max-width:620px){.trust-points{grid-template-columns:1fr}.guarantee-badge{border-left:0!important}}

.trust-feature{position:relative;min-height:190px;border-left:1px solid #5a5140;padding:22px 14px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center}.trust-feature .trust-icon{position:absolute;top:22px;color:var(--gold);font:48px Georgia,serif;line-height:1;font-style:normal}.trust-feature .link{font-family:Arial,sans-serif;font-weight:400;transform:rotate(-38deg);font-size:56px}.trust-feature .umbrella{font-size:47px}.trust-feature b{color:#fff;font:700 16px Arial;letter-spacing:0}.trust-feature span{margin-top:7px;color:#ddd;font-size:13px}

.footer-guarantee{display:inline-flex;align-items:center;gap:8px}.footer-guarantee i{margin:0!important;border:0!important;height:auto!important;color:var(--gold);font-style:normal;font-size:16px}

header nav a{font-size:13px;font-weight:500;letter-spacing:0;color:#f2f0ec}header nav a:hover{color:var(--gold)}


.social-links{display:flex;gap:12px;margin-top:19px}.social-links a{width:32px;height:32px;margin:0!important;border:1px solid #d9d3ca;border-radius:50%;display:grid!important;place-items:center;color:#fff!important;font:700 16px Arial;text-decoration:none}.social-links a:hover{border-color:var(--gold);color:var(--gold)!important}.footer-main .contact-item{position:relative;padding-left:27px}.contact-item i{position:absolute;left:0;top:0;color:var(--gold);font-style:normal;font-size:17px;line-height:1}


/* Reference-matched footer callout */
.site-footer{background:#fbfaf8!important;color:#fff}.footer-cta{max-width:1280px;margin:18px auto 10px;padding:15px 28px;border:1px solid #eee8de;border-radius:8px;background:#f7f4ee;box-shadow:0 4px 18px rgba(24,19,12,.06);grid-template-columns:68px 1fr auto}.cta-icon{width:60px!important;height:60px!important;margin:0!important;border:2px solid var(--gold)!important;position:relative}.cta-icon span{width:23px;height:20px;border:2px solid var(--gold);border-radius:2px;position:relative}.cta-icon span:before{content:"";position:absolute;left:3px;right:3px;top:4px;border-top:2px solid var(--gold)}.cta-icon span:after{content:"";position:absolute;left:4px;top:-5px;width:3px;height:6px;border-left:2px solid var(--gold);border-right:10px double var(--gold)}.footer-cta .button{margin:0!important;background:var(--gold)!important;color:#17120a!important;border:1px solid var(--gold)!important;min-width:190px}.footer-main{max-width:none!important;margin:0!important;padding:48px max(28px,calc((100vw - 1280px)/2)) 38px!important;background:#070707}.footer-bottom{max-width:none!important;margin:0!important;padding:19px max(28px,calc((100vw - 1280px)/2))!important;background:#070707}@media(max-width:820px){.footer-cta{margin:16px 18px}.footer-main,.footer-bottom{padding-left:22px!important;padding-right:22px!important}}


/* Final footer alignment: matched to the approved visual reference */
.site-footer{display:block!important;background:#fbfaf8!important;padding:0!important}
.footer-cta{max-width:1280px!important;margin:18px auto 10px!important;padding:14px 28px!important;display:grid!important;grid-template-columns:64px minmax(0,1fr) 205px!important;align-items:center!important;gap:22px!important;background:#f8f5ef!important;color:#17130e!important;border:1px solid #eee8de!important;border-radius:8px!important;box-shadow:0 4px 18px rgba(24,19,12,.06)!important}
.cta-icon{width:60px!important;height:60px!important;margin:0!important;border:2px solid var(--gold)!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:transparent!important}
.cta-icon span{display:block!important;width:24px!important;height:21px!important;border:2px solid var(--gold)!important;border-radius:2px!important;position:relative!important}
.cta-icon span:before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:5px!important;border-top:2px solid var(--gold)!important}
.cta-icon span:after{content:""!important;position:absolute!important;left:4px!important;top:-6px!important;width:12px!important;height:7px!important;border-left:2px solid var(--gold)!important;border-right:2px solid var(--gold)!important}
.footer-cta h2{margin:0 0 2px!important;font:700 29px Georgia,"Times New Roman",serif!important;letter-spacing:-.035em!important;color:#17130e!important}
.footer-cta p{margin:0!important;color:#3f3932!important;font-size:14px!important;line-height:1.35!important}
.cta-action{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important}
.footer-cta .cta-action .button{min-width:0!important;margin:0!important;padding:13px 16px!important;background:var(--gold)!important;color:#17120a!important;border:1px solid var(--gold)!important;white-space:nowrap!important;font-size:12px!important}
.cta-action small{display:block!important;text-align:center!important;color:#4e4942!important;font:12px Arial,Helvetica,sans-serif!important;line-height:1.1!important}
.footer-main{max-width:none!important;margin:0!important;padding:43px max(46px,calc((100vw - 1280px)/2)) 34px!important;display:grid!important;grid-template-columns:1.25fr .8fr 1.25fr 1.15fr!important;gap:30px!important;background:#070707!important;color:#fff!important}
.footer-main>div+div{border-left:1px solid #393733!important;padding-left:27px!important}
.footer-main .brand-logo{width:190px!important;max-height:52px!important}
.footer-brand p{margin:15px 0 0!important;max-width:220px!important;font-size:13px!important;line-height:1.42!important}
.footer-main b{margin:0 0 15px!important;color:var(--gold)!important;font-size:12px!important;letter-spacing:.06em!important}
.footer-main a{margin:8px 0!important;font-size:13px!important;font-weight:500!important;letter-spacing:0!important}
.footer-main p{font-size:13px!important;line-height:1.42!important}
.social-links{margin-top:17px!important}.social-links a{width:31px!important;height:31px!important}
.footer-bottom{max-width:none!important;margin:0!important;padding:17px max(46px,calc((100vw - 1280px)/2))!important;display:flex!important;justify-content:space-between!important;align-items:center!important;border-top:1px solid #393733!important;background:#070707!important;color:#e1ddd7!important;font-size:12px!important}
.footer-guarantee{white-space:nowrap!important}
@media(max-width:820px){.footer-cta{margin:16px 18px!important;grid-template-columns:56px minmax(0,1fr)!important;padding:16px!important}.cta-icon{width:52px!important;height:52px!important}.cta-action{grid-column:1/-1!important}.footer-cta .cta-action .button{width:100%!important}.footer-main{grid-template-columns:1fr 1fr!important;padding:38px 22px!important}.footer-main>div+div{border-left:0!important;padding-left:0!important}.footer-bottom{padding:17px 22px!important;flex-direction:column!important;align-items:flex-start!important}}
@media(max-width:520px){.footer-cta{grid-template-columns:1fr!important;text-align:center!important}.cta-icon{margin:auto!important}.footer-main{grid-template-columns:1fr!important}.footer-bottom{gap:12px!important}}


/* Consistent gold line icon set used throughout the final footer */
.social-links a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-item{display:flex!important;align-items:flex-start!important;gap:10px;padding-left:0!important}
.contact-item>svg{flex:0 0 17px;width:17px;height:17px;margin-top:1px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-item i{display:none!important}
.footer-guarantee>svg{width:17px;height:17px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-guarantee i{display:none!important}


/* Bottom policy links stay in one horizontal line, matching the approved footer */
.footer-bottom>span:nth-child(2){display:inline-flex!important;align-items:center!important;white-space:nowrap!important}
.footer-bottom>span:nth-child(2) a{display:inline!important;margin:0!important}
.footer-bottom>span:nth-child(2) i{display:inline-block!important}


/* Bottom policy links stay in one horizontal line, matching the approved footer */
.footer-bottom>span:nth-child(2){display:inline-flex!important;align-items:center!important;white-space:nowrap!important}
.footer-bottom>span:nth-child(2) a{display:inline!important;margin:0!important}
.footer-bottom>span:nth-child(2) i{display:inline-block!important}
.footer-bottom>span:nth-child(2) a{font-weight:400!important;letter-spacing:0!important}


/* Footer contact details: contact only, no street address; distinct office and field hours */
.contact-item strong{color:#fff;font:600 13px Arial,Helvetica,sans-serif}


/* Homepage header proportions match the approved reference */
header{gap:24px!important;min-height:82px!important}
header nav{gap:24px!important}
header .button{padding:11px 20px!important;font-size:11px!important;line-height:1!important;min-height:39px!important}


/* How It Works is a guided in-page callout, not a primary header destination */
.how-callout{margin:0 max(30px,calc((100vw - 1360px)/2)) 66px;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:#070707;color:#fff}
.how-callout h2{max-width:660px;margin:0 0 10px;font-size:38px}.how-callout p:not(.eyebrow){margin:0;color:#d7d2ca}.how-callout .outline{flex:0 0 auto}
@media(max-width:620px){.how-callout{margin:0 18px 38px;padding:28px 22px;display:block}.how-callout h2{font-size:32px}.how-callout .outline{margin-top:22px;width:100%}}


/* Homepage body rebuilt to match the approved reference layout */
.showcase-hero{min-height:440px!important;grid-template-columns:minmax(400px,.9fr) minmax(500px,1.1fr)!important}
.showcase-copy{padding-top:54px!important;padding-bottom:54px!important}.showcase-copy h1{font-size:clamp(46px,5vw,70px)!important;margin-bottom:19px!important}.showcase-copy p:not(.eyebrow){font-size:16px!important;line-height:1.55!important;margin-bottom:26px!important}.showcase-hero>img{min-height:440px!important;height:440px!important;object-position:center top!important}.showcase-copy .button{padding:13px 22px!important}
.service-overview{padding-top:28px!important;padding-bottom:30px!important}.service-overview h2{font-size:39px!important;margin-bottom:21px!important}.category-row article{min-height:205px!important;padding:22px 13px 18px!important;gap:10px!important}.category-icon{display:block;width:48px;height:48px;margin:0 auto 5px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.category-row b{font:700 16px Arial,Helvetica,sans-serif!important}.category-row span{font-size:12px!important;line-height:1.4!important}
.popular{padding-top:9px!important;padding-bottom:31px!important}.section-line h2{font-size:31px!important}.photo-row{grid-template-columns:repeat(5,1fr)!important;gap:16px!important}.photo-row img{height:190px!important;object-position:center top!important}.photo-row b{font-size:16px!important;padding:13px 10px 16px!important}
.trust-panel{padding-top:39px!important;padding-bottom:39px!important;grid-template-columns:.88fr 1.72fr!important;gap:36px!important}.trust-panel h2{font-size:42px!important;margin-bottom:14px!important}.trust-panel>div>p:not(.eyebrow){font-size:15px!important;line-height:1.5!important}.trust-points{grid-template-columns:repeat(4,1fr)!important;align-items:stretch!important}.trust-feature{min-height:194px!important;padding:18px 13px 15px!important;justify-content:flex-end!important}.trust-feature .trust-svg{position:absolute;top:18px;width:44px;height:44px;fill:none;stroke:var(--gold);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.trust-feature b{font-size:16px!important}.trust-feature span{font-size:12px!important;line-height:1.42!important}.guarantee-badge{min-height:194px!important;border-left:1px solid #5a5140!important}.guarantee-badge img{top:14px!important;width:46px!important;height:46px!important}.guarantee-badge .badge-five{margin-top:20px!important;font-size:43px!important}.guarantee-badge strong{bottom:29px!important}.guarantee-badge small{bottom:9px!important}
@media(max-width:980px){.photo-row{grid-template-columns:repeat(3,1fr)!important}.showcase-hero{grid-template-columns:1fr!important}.showcase-hero>img{height:420px!important}.trust-panel{grid-template-columns:1fr!important}}@media(max-width:620px){.photo-row{grid-template-columns:1fr!important}.category-icon{width:42px;height:42px}.showcase-hero>img{min-height:330px!important;height:330px!important}.trust-points{grid-template-columns:1fr!important}}


/* Reference-proportioned homepage hero */
.showcase-hero{min-height:442px!important;grid-template-columns:1fr 1fr!important;border-bottom:1px solid #dfdbd2!important}
.showcase-copy{min-height:442px!important;padding:54px clamp(38px,5.2vw,78px)!important;background:#fff!important}
.showcase-copy h1{max-width:550px!important;font-size:clamp(45px,4.2vw,64px)!important;line-height:1.06!important;letter-spacing:-.048em!important;margin:0 0 22px!important}
.showcase-copy .eyebrow{margin-bottom:17px!important}.showcase-copy .gold-rule{width:45px!important;margin:0 0 25px!important}.showcase-copy p:not(.eyebrow){max-width:445px!important;margin:0 0 29px!important;font-size:15px!important;line-height:1.55!important}.showcase-copy .dark-button{padding:13px 23px!important;min-height:44px!important;font-size:11px!important}
.showcase-hero>img{width:100%!important;min-height:442px!important;height:442px!important;object-fit:cover!important;object-position:center!important}
@media(max-width:980px){.showcase-hero{grid-template-columns:1fr!important}.showcase-copy{min-height:unset!important;padding:56px 34px!important}.showcase-hero>img{height:410px!important;min-height:410px!important}}@media(max-width:620px){.showcase-copy{padding:46px 22px!important}.showcase-copy h1{font-size:45px!important}.showcase-hero>img{height:330px!important;min-height:330px!important}}


/* Tight, reference-style trust band */
.trust-panel .outline{min-height:40px!important;padding:11px 18px!important;background:#070707!important;border:1px solid var(--gold)!important;color:var(--gold)!important;font-size:11px!important;line-height:1!important}
.trust-panel .outline:hover{background:var(--gold)!important;color:#090705!important}
.trust-points{gap:0!important}.trust-feature{min-height:190px!important;padding:18px 14px!important;display:grid!important;grid-template-rows:54px 24px 1fr!important;align-items:start!important;justify-items:center!important;justify-content:initial!important;text-align:center!important}.trust-feature .trust-svg{position:static!important;width:46px!important;height:46px!important;margin:0!important}.trust-feature b{align-self:center!important;margin:0!important}.trust-feature span{align-self:start!important;margin-top:7px!important;max-width:120px!important}
.guarantee-badge{min-height:190px!important;padding:14px 10px!important;display:grid!important;grid-template-rows:48px 58px 32px 22px!important;place-items:center!important;overflow:visible!important}.guarantee-badge:before,.guarantee-badge:after{content:""!important;position:absolute!important;top:54px!important;width:24px!important;height:81px!important;border:2px solid var(--gold)!important;border-top:0!important;border-right:0!important;border-radius:0 0 0 38px!important;opacity:.95!important}.guarantee-badge:before{left:16px!important;transform:rotate(-26deg)!important}.guarantee-badge:after{right:16px!important;transform:scaleX(-1) rotate(-26deg)!important}.guarantee-badge img{position:static!important;width:45px!important;height:45px!important;grid-row:1!important}.guarantee-badge .badge-five{position:static!important;grid-row:2!important;margin:0!important;font-size:48px!important;line-height:.8!important;z-index:1!important}.guarantee-badge .badge-five span{margin-top:8px!important;font-size:10px!important}.guarantee-badge strong{position:static!important;grid-row:3!important;bottom:auto!important;text-align:center!important;z-index:1!important}.guarantee-badge small{position:static!important;grid-row:4!important;bottom:auto!important;text-align:center!important;z-index:1!important}


/* Larger trust icons for the three core assurance columns */
.trust-feature{min-height:220px!important;grid-template-rows:92px 27px 1fr!important;padding-top:19px!important}
.trust-feature .trust-svg{width:84px!important;height:84px!important;stroke-width:1.65!important}


/* Clean single-piece five-year seal: no pseudo-lines or layered fragments */
.guarantee-badge{display:grid!important;place-items:center!important;min-height:220px!important;padding:7px!important;position:relative!important;overflow:hidden!important}
.guarantee-badge:before,.guarantee-badge:after{display:none!important;content:none!important}
.guarantee-badge .guarantee-seal{position:static!important;display:block!important;width:min(100%,205px)!important;height:205px!important;max-width:205px!important;object-fit:contain!important;margin:0!important}
.guarantee-badge .badge-five,.guarantee-badge strong,.guarantee-badge small,.guarantee-badge img:not(.guarantee-seal){display:none!important}


/* Clean single-piece five-year seal: no pseudo-lines or layered fragments */
.guarantee-badge{display:grid!important;place-items:center!important;min-height:220px!important;padding:7px!important;position:relative!important;overflow:hidden!important}
.guarantee-badge:before,.guarantee-badge:after{display:none!important;content:none!important}
.guarantee-badge .guarantee-seal{position:static!important;display:block!important;width:min(100%,205px)!important;height:205px!important;max-width:205px!important;object-fit:contain!important;margin:0!important}
.guarantee-badge .badge-five,.guarantee-badge strong,.guarantee-badge small,.guarantee-badge img:not(.guarantee-seal){display:none!important}


/* Clean single-piece five-year seal: no pseudo-lines or layered fragments */
.guarantee-badge{display:grid!important;place-items:center!important;min-height:220px!important;padding:7px!important;position:relative!important;overflow:hidden!important}
.guarantee-badge:before,.guarantee-badge:after{display:none!important;content:none!important}
.guarantee-badge .guarantee-seal{position:static!important;display:block!important;width:min(100%,205px)!important;height:205px!important;max-width:205px!important;object-fit:contain!important;margin:0!important}
.guarantee-badge .badge-five,.guarantee-badge strong,.guarantee-badge small,.guarantee-badge img:not(.guarantee-seal){display:none!important}


/* Clean single-piece five-year seal: no pseudo-lines or layered fragments */
.guarantee-badge{display:grid!important;place-items:center!important;min-height:220px!important;padding:7px!important;position:relative!important;overflow:hidden!important}
.guarantee-badge:before,.guarantee-badge:after{display:none!important;content:none!important}
.guarantee-badge .guarantee-seal{position:static!important;display:block!important;width:min(100%,205px)!important;height:205px!important;max-width:205px!important;object-fit:contain!important;margin:0!important}
.guarantee-badge .badge-five,.guarantee-badge strong,.guarantee-badge small,.guarantee-badge img:not(.guarantee-seal){display:none!important}


/* User-approved reference-derived five-year seal */
.guarantee-badge{grid-template-rows:minmax(0,1fr) auto auto!important;align-content:center!important;gap:3px!important;padding:8px!important}
.guarantee-badge .guarantee-seal{width:min(100%,160px)!important;height:144px!important;max-width:160px!important;object-fit:contain!important}
.guarantee-badge strong{display:block!important;position:static!important;color:var(--gold)!important;font:700 16px Arial,Helvetica,sans-serif!important;letter-spacing:1px!important;line-height:1.2!important;text-align:center!important}
.guarantee-badge small{display:block!important;position:static!important;color:#f0ece5!important;font:10.5px Arial,Helvetica,sans-serif!important;line-height:1.25!important;text-align:center!important}


/* Keep the reference badge and guarantee wording visually connected */
.guarantee-badge{grid-template-rows:136px auto auto!important;align-content:start!important;gap:0!important;padding-top:7px!important}
.guarantee-badge .guarantee-seal{height:132px!important;margin-bottom:0!important}
.guarantee-badge strong{margin-top:0!important}


/* Keep the reference badge and guarantee wording visually connected */
.guarantee-badge{grid-template-rows:136px auto auto!important;align-content:start!important;gap:0!important;padding-top:7px!important}
.guarantee-badge .guarantee-seal{height:132px!important;margin-bottom:0!important}
.guarantee-badge strong{margin-top:0!important}
.guarantee-badge small{margin-top:8px!important}


/* Let the portrait service photos breathe instead of cropping them tightly */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:contain!important;object-position:center!important;background:#efede9!important}


/* Let the portrait service photos breathe instead of cropping them tightly */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(2) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:contain!important;object-position:center!important;background:#efede9!important}


/* Final Popular Services landscape image treatment */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(2) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:cover!important;object-position:center!important;background:transparent!important}


/* Final Popular Services landscape image treatment */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(2) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:cover!important;object-position:center!important;background:transparent!important}


/* Final Popular Services landscape image treatment */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(2) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:cover!important;object-position:center!important;background:transparent!important}


/* Final Popular Services landscape image treatment */
.photo-row a:nth-child(1) img,.photo-row a:nth-child(2) img,.photo-row a:nth-child(3) img,.photo-row a:nth-child(4) img,.photo-row a:nth-child(5) img{object-fit:cover!important;object-position:center!important;background:transparent!important}


/* Homepage hero action: compact reference-style black button */
.showcase-copy .dark-button{
  min-height:40px!important;
  padding:10px 19px!important;
  border:1px solid var(--gold)!important;
  background:#090909!important;
  color:var(--gold)!important;
  font-size:11px!important;
  line-height:1!important;
}


/* Homepage hero action: compact reference-style black button */
.showcase-copy .dark-button{
  width:180px!important;
  min-height:40px!important;
  padding:10px 12px!important;
  gap:9px!important;
  white-space:nowrap!important;
  border:1px solid var(--gold)!important;
  background:#090909!important;
  color:var(--gold)!important;
  font-size:11px!important;
  line-height:1!important;
}


/* Keep each homepage hero headline phrase on one intentional line. */
.showcase-copy h1{
  font-size:clamp(42px,3.8vw,56px)!important;
}


/* Homepage hero action: compact reference-style black button */
.showcase-copy .dark-button{
  width:195px!important;
  min-height:40px!important;
  padding:10px 12px!important;
  gap:9px!important;
  white-space:nowrap!important;
  border:1px solid var(--gold)!important;
  background:#090909!important;
  color:var(--gold)!important;
  font-size:10px!important;
  line-height:1!important;
}


/* Homepage hero action: compact reference-style black button */
.showcase-copy .dark-button{
  width:195px!important;
  min-height:40px!important;
  padding:10px 12px!important;
  gap:9px!important;
  white-space:nowrap!important;
  border:1px solid var(--gold)!important;
  background:#090909!important;
  color:var(--gold)!important;
  font-size:9px!important;
  line-height:1!important;
}


/* Homepage local-service and process bridge */
.home-bridge{display:grid;grid-template-columns:1.1fr .9fr;gap:76px;padding:72px max(30px,calc((100vw - 1360px)/2));background:#f4f1eb;border-bottom:1px solid #ddd7cd}.home-bridge h2{max-width:620px;margin:0 0 22px;font-size:44px}.home-bridge-copy>p:not(.eyebrow){max-width:650px;margin:0 0 17px;color:#4e4942;font-size:16px;line-height:1.65}.home-steps{padding:7px 0 0 36px;border-left:1px solid #cbb994}.home-steps ol{margin:14px 0 24px;padding:0;list-style:none}.home-steps li{display:flex;gap:15px;padding:14px 0;border-bottom:1px solid #d6d0c6}.home-steps li span{color:var(--gold);font:700 16px Georgia,serif}.home-steps li b{display:block;font:700 18px Georgia,serif}.home-steps li p{margin:2px 0 0;color:#5f5a54;font-size:14px}.home-steps .outline{min-height:42px;padding:11px 16px;font-size:11px}@media(max-width:800px){.home-bridge{grid-template-columns:1fr;gap:34px;padding:52px 30px}.home-steps{padding-left:0;border-left:0;border-top:1px solid #cbb994;padding-top:30px}.home-bridge h2{font-size:38px}}@media(max-width:620px){.home-bridge{padding:44px 18px}.home-bridge h2{font-size:34px}}


/* Active page marker in the main header */
header nav a{position:relative;padding:31px 0 29px;font-weight:500!important}
header nav a.active{color:#fff!important}
header nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;background:var(--gold)}
@media(max-width:620px){header nav a{padding:0}header nav a.active::after{display:none}}


/* Keep the homepage consultation portrait clear of browser-specific cover crops. */
.showcase-hero>img{object-position:center top!important}


/* Give the homepage hero fifty more pixels of breathing room. */
.showcase-hero{min-height:492px!important}
.showcase-copy{min-height:492px!important}
.showcase-hero>img{min-height:492px!important;height:492px!important}
@media(max-width:980px){.showcase-copy{min-height:unset!important}.showcase-hero>img{min-height:460px!important;height:460px!important}}
@media(max-width:620px){.showcase-hero>img{min-height:360px!important;height:360px!important}}


/* Services referral panel: category icons and clear plain-English scope. */
.referral-panel .referral-items{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.referral-panel .referral-items article{min-height:152px;padding:18px 9px 15px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;text-align:center}
.referral-panel .referral-items article:last-child{border-right:0}
.referral-panel .referral-items svg{width:35px;height:35px;margin-bottom:10px;fill:none;stroke:#161616;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.referral-panel .referral-items b{padding:0;border:0;font-size:13px;line-height:1.2}
.referral-panel .referral-items span{margin-top:7px;color:#47433e;font-size:12px;line-height:1.35}
@media(max-width:980px){.referral-panel .referral-items{grid-template-columns:repeat(4,1fr)}.referral-panel .referral-items article:nth-child(4){border-right:0}.referral-panel .referral-items article:nth-child(-n+4){border-bottom:1px solid var(--line)}}
@media(max-width:620px){.referral-panel .referral-items{grid-template-columns:1fr}.referral-panel .referral-items article,.referral-panel .referral-items article:nth-child(4){border-right:0;border-bottom:1px solid var(--line)}.referral-panel .referral-items article:last-child{border-bottom:0}}


.referral-panel .referral-note{margin:20px 0 0!important;color:#5f5a54!important;font-size:14px!important;line-height:1.45}
.referral-panel .referral-note strong{display:block;margin-top:2px;color:#111;font-weight:800}


.referral-panel{position:relative!important;margin-top:76px!important}
.referral-shield{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:44px;height:40px;padding:0 5px;background:var(--white);display:grid;place-items:center}
.referral-shield svg{width:30px;height:30px;fill:none;stroke:#111;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}


/* Clean, reference-style shield separator without inherited panel rules. */
.referral-panel>.referral-shield{position:absolute!important;top:-20px!important;left:50%!important;transform:translateX(-50%)!important;width:44px!important;height:40px!important;padding:0 5px!important;background:var(--white)!important;display:grid!important;place-items:center!important;border:0!important;min-height:0!important;z-index:2}
.referral-panel>.referral-shield svg{width:29px!important;height:29px!important;margin:0!important;stroke:none!important;fill:none!important}
.referral-panel>.referral-shield .shield-fill{fill:#111}
.referral-panel>.referral-shield .shield-cut{fill:var(--white)}

/* Exact reference icons used for Plumbing, HVAC, and Roofing. */
.referral-panel .referral-items .referral-reference-icon{width:35px;height:35px;object-fit:contain;margin:0 0 10px;display:block}

/* Exact reference icons used for Plumbing, HVAC, and Roofing. */
.referral-panel .referral-items .referral-reference-icon{width:35px;height:35px;object-fit:contain;margin:0 0 10px;display:block}

/* Exact reference icons used for Plumbing, HVAC, and Roofing. */
.referral-panel .referral-items .referral-reference-icon{width:35px;height:35px;object-fit:contain;margin:0 0 10px;display:block}

/* Bring the three exact reference icons up to the same visual weight as the other referral icons. */
.referral-panel .referral-items .referral-reference-icon{width:48px!important;height:48px!important;margin:-6px 0 3px!important}

/* Final size adjustment for the three approved reference icons. */
.referral-panel .referral-items .referral-reference-icon{width:53px!important;height:53px!important;margin:-8px 0 0!important}

/* Offset the white crop padding so the reference icons match the SVG icon weight. */
.referral-panel .referral-items .referral-reference-icon{width:63px!important;height:63px!important;margin:-13px 0 -5px!important}

/* Separate the Services referral panel from the black How It Works callout. */
.referral-panel + .how-callout{margin-top:48px!important}
@media(max-width:620px){.referral-panel + .how-callout{margin-top:30px!important}}

/* Google Business Profile and LinkedIn hiring placeholders. */
.social-links .social-google,.social-links .social-linkedin{overflow:visible!important}.social-links .social-google text,.social-links .social-linkedin text{fill:currentColor!important;stroke:none!important;font-family:Arial,Helvetica,sans-serif;font-weight:800}.social-links .social-google text{font-size:16px}.social-links .social-linkedin text{font-size:13px;letter-spacing:-1px}

/* Slightly larger Google and LinkedIn lettermarks inside the existing footer circles. */
.social-links .social-google text{font-size:18px!important}.social-links .social-linkedin text{font-size:15px!important}


/* Service Area: Keystone page body. */
.area-intro{padding:74px max(30px,calc((100vw - 1220px)/2)) 38px;text-align:center;background:#fff}
.area-intro h1{max-width:850px;margin:0 auto 17px;font-size:clamp(50px,5.5vw,76px)}
.area-intro>p:last-child{max-width:730px;margin:0 auto;color:var(--muted);font-size:18px}
.area-feature{max-width:1280px;margin:0 auto;padding:30px max(30px,calc((100vw - 1280px)/2)) 74px;display:grid;grid-template-columns:1.2fr .8fr;gap:54px;align-items:center}
.area-map-wrap{border:1px solid var(--line);padding:10px;background:#fff}
.area-map-wrap img{display:block;width:100%;height:auto}
.area-copy h2{margin:0 0 18px;font-size:46px}
.area-copy>p:not(.eyebrow){margin:0 0 26px;color:var(--muted);font-size:16px}
.area-list{border-top:1px solid var(--line)}
.area-list div{padding:15px 0;border-bottom:1px solid var(--line);display:grid;gap:4px}
.area-list b{font:700 19px Georgia,serif}.area-list span{color:var(--muted);font-size:14px;line-height:1.45}
.area-band{padding:48px max(30px,calc((100vw - 1220px)/2));display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center;background:#f0eeea;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.area-band h2{margin:0;font-size:43px}.area-band>p{margin:0;color:var(--muted);font-size:16px}
.area-confirmation{padding:66px max(30px,calc((100vw - 1220px)/2));text-align:center;background:#070707;color:#fff}
.area-confirmation h2{margin:0 0 15px;font-size:48px}.area-confirmation>p:not(.eyebrow){max-width:640px;margin:0 auto 27px;color:#d7d2ca}.area-confirmation .outline{padding:13px 20px}
@media(max-width:980px){.area-feature{grid-template-columns:1fr;gap:34px}.area-band{grid-template-columns:1fr;gap:18px}}
@media(max-width:620px){.area-intro{padding:54px 18px 26px}.area-feature{padding:24px 18px 52px}.area-copy h2,.area-band h2,.area-confirmation h2{font-size:39px}.area-band{padding:38px 18px}.area-confirmation{padding:48px 18px}}

/* Keep the Service Area headline strong without overpowering the map. */
.area-intro h1{font-size:clamp(42px,4.3vw,60px)!important;line-height:1.05!important}

/* Stable Service Area width across Chrome, Edge, and large displays. */
.area-feature{width:min(1280px,100%)!important;max-width:none!important;margin:0 auto!important;padding:30px 30px 74px!important}
@media(max-width:620px){.area-feature{padding:24px 18px 52px!important}}

/* Two-column footer navigation */
.footer-menu-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;align-items:start}.footer-menu-links a{margin:8px 0!important}.faq-page{width:min(1120px,calc(100% - 56px));margin:0 auto;padding:88px 0 96px}.faq-page h1{font-size:clamp(42px,6vw,72px);margin:10px 0 18px}.page-intro{max-width:690px;font-size:18px;line-height:1.6;margin:0 0 34px}.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 34px}.faq-grid article{border:1px solid #ded9d1;padding:25px}.faq-grid h2{font-size:24px;margin:0 0 10px}.faq-grid p{line-height:1.55;margin:0}@media(max-width:620px){.footer-menu-links{column-gap:20px}.faq-page{width:min(100% - 36px,1120px);padding:62px 0}.faq-grid{grid-template-columns:1fr}}

/* Compact footer menu columns */
.footer-menu-links{column-gap:10px!important;row-gap:0!important}.footer-menu-links a{margin:6px 0!important}

/* Footer menu: column-first ordering */
.footer-menu-links{grid-template-rows:repeat(5,auto);grid-auto-flow:column;justify-content:start}

/* Careers card imagery */
.careers-grid article{padding:0!important;overflow:hidden}.careers-grid article img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.careers-grid article h2,.careers-grid article p{margin-left:25px;margin-right:25px}.careers-grid article h2{margin-top:22px}.careers-grid article p{margin-bottom:25px}

/* Careers opportunities table */
.openings-table{margin-top:48px;padding-top:38px;border-top:1px solid #ded9d1}.openings-table h2{font-size:32px;margin:6px 0 20px}.openings-scroll{overflow-x:auto}.openings-table table{width:100%;border-collapse:collapse;text-align:left}.openings-table th{background:#080808;color:var(--gold);font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:15px 18px}.openings-table td{padding:22px 18px;border:1px solid #ded9d1;font-size:15px}.openings-table .no-openings td{text-align:center;color:#5b554c;font-style:italic}@media(max-width:620px){.openings-table{margin-top:36px}.openings-table table{min-width:640px}}

/* About company hub */
.about-intro h1{font-size:clamp(42px,5vw,62px)!important;line-height:1.08!important}.about-hub{width:min(1120px,calc(100% - 56px));margin:0 auto 74px;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:60px;align-items:start}.about-story h2{font-size:clamp(31px,3.2vw,46px);line-height:1.12;margin:8px 0 20px}.about-story>p{max-width:710px;font-size:17px;line-height:1.62}.about-values{margin-top:34px;border-top:1px solid #ded9d1}.about-values article{padding:18px 0;border-bottom:1px solid #ded9d1;display:grid;grid-template-columns:205px 1fr;gap:20px}.about-values b{font-size:16px}.about-values span{line-height:1.5;color:#504b45}.about-links{border:1px solid #ded9d1;padding:25px 26px}.about-links .eyebrow{margin:0 0 14px}.about-links a{display:block;padding:15px 0;border-top:1px solid #ded9d1;color:inherit;text-decoration:none}.about-links a:last-child{padding-bottom:0}.about-links b{display:block;font-size:16px;margin-bottom:4px}.about-links span{font-size:14px;color:#5b554c}.about-links a:hover b{color:var(--gold)}@media(max-width:760px){.about-hub{width:min(100% - 36px,1120px);grid-template-columns:1fr;gap:34px;margin-bottom:52px}.about-values article{grid-template-columns:1fr;gap:6px}.about-links{order:2}}

/* Distinct About-page related-links card */
.about-links{padding:0!important;border-radius:10px!important;overflow:hidden;background:#fbfaf8;box-shadow:0 8px 22px rgba(22,19,15,.08)}.about-links .eyebrow{margin:0!important;padding:17px 22px!important;background:#070707;color:var(--gold)!important}.about-links a{margin:0 22px!important;padding:16px 0!important}.about-links a:last-child{padding-bottom:18px!important}

.about-links .eyebrow{display:flex;align-items:center;gap:9px}.about-links .eyebrow img{width:22px;height:22px;object-fit:contain}

/* Breathing room between About intro and company hub */
.about-intro{padding-bottom:30px!important}

/* Visible About intro separation */
.about-intro{margin-bottom:30px!important}

/* Direct extra space after About intro copy */
.about-intro{padding-bottom:58px!important;margin-bottom:0!important}

.about-intro{padding-bottom:78px!important}

/* About value cards */
.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border:0!important}.about-values article{display:block!important;padding:0!important;border:1px solid #ded9d1!important;background:#fff;overflow:hidden}.about-values article img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.about-values article div{padding:18px}.about-values b{display:block;margin-bottom:7px}.about-values span{display:block}@media(max-width:760px){.about-values{grid-template-columns:1fr}.about-values article{display:grid!important;grid-template-columns:150px 1fr}.about-values article img{height:100%;aspect-ratio:auto}.about-values article div{padding:18px}}@media(max-width:460px){.about-values article{grid-template-columns:1fr}.about-values article img{aspect-ratio:3/2}}

/* About mission statement */
.about-mission{margin:30px 0 34px;padding:20px 0 20px 22px;border-left:3px solid var(--gold);background:linear-gradient(90deg,#f4f0e8 0%,rgba(244,240,232,0) 88%)}.about-mission .eyebrow{margin-bottom:7px}.about-mission p:last-child{margin:0!important;max-width:660px;font:700 20px/1.42 Georgia,serif;color:#211c15}

/* Reusable email signup callout */
.about-sidebar{display:flex;flex-direction:column;gap:18px}.email-signup-card{position:relative;overflow:hidden;padding:24px;background:#0a0a09;color:#fff;border-radius:10px}.email-signup-card>img{position:absolute;right:-12px;top:-3px;width:92px;opacity:.12}.email-signup-card .eyebrow{position:relative;color:var(--gold)!important;margin:0 0 8px}.email-signup-card h2{position:relative;margin:0 0 9px;font-size:28px}.email-signup-card>p:not(.eyebrow){position:relative;margin:0 0 17px;color:#d7d2ca;font-size:14px;line-height:1.48}.email-signup-card form{position:relative;display:grid;gap:9px}.email-signup-card input{width:100%;padding:12px 13px;border:1px solid #58534a;background:#fff;color:#17130e;font:14px Arial}.email-signup-card button{padding:12px;background:var(--gold);border:1px solid var(--gold);color:#17120a;text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:12px;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.email-signup-button{position:relative;display:block;padding:12px!important;background:var(--gold);border:1px solid var(--gold);color:#17120a!important;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:12px}.deals-page{max-width:900px}.current-offer,.deals-signup{margin-top:40px;padding:32px;border:1px solid #ded9d1}.current-offer{background:#f5f1e8}.current-offer h2,.deals-signup h2{font-size:32px;margin:5px 0 12px}.current-offer p:last-child,.deals-signup>p{margin:0;line-height:1.6}.deals-signup{background:#090909;color:#fff;border:0;border-radius:10px}.deals-signup .eyebrow{color:var(--gold)!important}.deals-signup>p{color:#ddd7cf}.deals-signup form{display:flex;gap:10px;margin-top:20px}.deals-signup input{flex:1;padding:13px;border:0;font:15px Arial}.deals-signup button{padding:13px 18px;background:var(--gold);border:1px solid var(--gold);color:#17120a;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.deals-signup small{display:block;margin-top:12px;color:#bdb7ae}@media(max-width:560px){.deals-signup form{display:grid}.current-offer,.deals-signup{padding:24px}}

.deals-signup form{grid-template-columns:1fr 1fr auto!important}.deals-signup form input:first-of-type{grid-column:1/-1}@media(max-width:560px){.deals-signup form{grid-template-columns:1fr!important}.deals-signup form input:first-of-type{grid-column:auto!important}}

/* Referral Network page */
.referral-page{width:min(1120px,calc(100% - 56px));margin:0 auto;padding:84px 0 96px;text-align:center}.referral-page h1{font-size:clamp(48px,6vw,78px);margin:8px 0 18px}.referral-page>.page-intro{max-width:660px;margin:0 auto 40px;font-size:18px;line-height:1.6}.referral-reward{display:grid;grid-template-columns:1fr 180px;align-items:center;text-align:left;background:#080808;color:#fff;padding:34px 42px;margin-bottom:22px;border-radius:10px;overflow:hidden}.referral-reward .eyebrow{color:var(--gold)!important}.referral-reward b{display:inline-block;font:76px/1 Georgia,serif;color:var(--gold)}.referral-reward h2{display:inline-block;margin:0 0 0 12px;font-size:32px}.referral-reward p:last-child{max-width:520px;margin:12px 0 0;color:#ddd7cf}.referral-crest img{width:150px;opacity:.85}.referral-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left;margin:0 0 42px}.referral-steps article{border:1px solid #ded9d1;padding:25px}.referral-steps span{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--gold);font-weight:900}.referral-steps h2{font-size:25px;margin:16px 0 9px}.referral-steps p{margin:0;line-height:1.55;color:#5b554c}.referral-terms{max-width:780px;margin:0 auto 34px;padding:28px 34px;text-align:left;background:#f3f0ea}.referral-terms h2{font-size:33px;margin:5px 0 14px}.referral-terms ul{margin:0;padding-left:20px;line-height:1.75}.referral-page>.button{padding:16px 24px}@media(max-width:700px){.referral-page{width:min(100% - 36px,1120px);padding:64px 0}.referral-reward{grid-template-columns:1fr;padding:28px}.referral-crest{display:none}.referral-steps{grid-template-columns:1fr}.referral-terms{padding:25px}}


/* Contact page: package-first request journey. */
.contact-hero{padding:84px max(30px,calc((100vw - 1120px)/2)) 88px;text-align:center;background:#fff}
.contact-hero h1{margin:7px 0 18px;font-size:clamp(52px,6.1vw,80px);line-height:.99}
.contact-hero>p:not(.eyebrow){max-width:670px;margin:0 auto 28px;color:var(--muted);font-size:18px;line-height:1.62}
.contact-hero .button{padding:14px 22px}
.contact-flow{display:grid;grid-template-columns:.82fr 1.18fr;gap:76px;padding:78px max(30px,calc((100vw - 1120px)/2));background:#f3f0ea;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-flow-intro h2{margin:5px 0 18px;font-size:43px;line-height:1.08}
.contact-flow-intro>p:not(.eyebrow){max-width:365px;margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.contact-steps{border-top:1px solid #cfc8bc}
.contact-steps article{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid #cfc8bc}
.contact-steps span{color:var(--gold);font:700 17px Georgia,serif;letter-spacing:.04em}
.contact-steps h3{margin:0 0 5px;font-size:23px}.contact-steps p{margin:0;color:#5c564e;font-size:15px;line-height:1.52}
.contact-ready-wrap{padding:78px max(30px,calc((100vw - 1120px)/2));background:#fff}
.contact-ready{display:grid;grid-template-columns:.8fr 1.2fr;gap:82px;padding:40px 44px;border:1px solid #d9d3c9}
.contact-ready h2{margin:6px 0 14px;font-size:38px;line-height:1.1}.contact-ready>div>p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.6}
.contact-ready ul{margin:0;padding:0;list-style:none;border-top:1px solid #ded8ce}.contact-ready li{display:grid;grid-template-columns:185px 1fr;gap:16px;padding:15px 0;border-bottom:1px solid #ded8ce}.contact-ready li b{font:700 17px Georgia,serif}.contact-ready li span{color:#5c564e;font-size:14px;line-height:1.45}
.contact-next{padding:72px max(30px,calc((100vw - 1120px)/2));background:#070707;text-align:center;color:#fff}.contact-next .eyebrow{color:var(--gold)!important}.contact-next h2{margin:7px 0 15px;font-size:48px;line-height:1.06}.contact-next>p:not(.eyebrow){max-width:520px;margin:0 auto 26px;color:#d8d3cb;font-size:16px;line-height:1.58}.contact-next .outline{display:inline-block;padding:13px 20px}
@media(max-width:800px){.contact-hero{padding:66px 30px 70px}.contact-flow,.contact-ready{grid-template-columns:1fr;gap:38px}.contact-flow{padding:60px 30px}.contact-ready-wrap{padding:58px 30px}.contact-ready{padding:32px}.contact-ready li{grid-template-columns:1fr;gap:4px}.contact-next{padding:58px 30px}}
@media(max-width:620px){.contact-hero{padding:56px 18px 60px}.contact-flow{padding:48px 18px}.contact-ready-wrap{padding:48px 18px}.contact-ready{padding:25px}.contact-hero h1{font-size:47px}.contact-flow-intro h2,.contact-ready h2,.contact-next h2{font-size:36px}.contact-next{padding:50px 18px}.contact-steps article{grid-template-columns:45px 1fr;gap:10px}}


/* Contact page: no-form customer path and office directory. */
.contact-directory-hero{padding:84px max(30px,calc((100vw - 1120px)/2)) 76px;text-align:center;background:#fff}
.contact-directory-hero h1{margin:7px 0 18px;font-size:clamp(51px,6vw,78px);line-height:1.01}.contact-directory-hero>p:not(.eyebrow){max-width:700px;margin:0 auto;color:var(--muted);font-size:18px;line-height:1.62}
.contact-directory{display:grid;grid-template-columns:1fr 1fr;width:min(1120px,calc(100% - 56px));margin:0 auto 78px;border:1px solid #d9d3c9;background:#fff}
.contact-new-customer{padding:48px;background:#f4f1eb}.contact-new-customer h2,.contact-office-directory h2{margin:6px 0 15px;font-size:42px;line-height:1.08}.contact-new-customer>p:not(.eyebrow){max-width:390px;margin:0;color:var(--muted);font-size:16px;line-height:1.6}.contact-new-customer ul{margin:28px 0 26px;padding:0;list-style:none;border-top:1px solid #d4cdc2}.contact-new-customer li{display:flex;gap:13px;align-items:flex-start;padding:13px 0;border-bottom:1px solid #d4cdc2;color:#4d4841;font-size:14px;line-height:1.45}.contact-new-customer li span{color:var(--gold);font:700 15px Georgia,serif}.contact-new-customer .button{display:inline-block;padding:14px 18px}.contact-new-customer small{display:block;margin-top:14px;color:#696158;font-size:12px}
.contact-office-directory{padding:48px}.contact-office-directory .directory-intro{max-width:410px;margin:0;color:var(--muted);font-size:16px;line-height:1.6}.contact-main-line{margin:27px 0 24px;padding:22px 0;border-top:1px solid #d8d2c8;border-bottom:1px solid #d8d2c8}.contact-main-line span{display:block;margin-bottom:5px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-main-line strong{display:block;font:700 34px/1.05 Georgia,serif;color:#14110e}.contact-main-line small{display:block;margin-top:9px;color:#686159;font-size:12px}.contact-email-list>div{padding:14px 0;border-bottom:1px solid #ded8ce;display:grid;grid-template-columns:180px 1fr;column-gap:18px}.contact-email-list b{font:700 16px Georgia,serif}.contact-email-list span{color:#5d574f;font-size:13px;line-height:1.45}.contact-email-list em{grid-column:2;margin-top:5px;color:var(--gold);font-size:11px;font-style:normal;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.directory-note{margin:16px 0 0;color:#71695f;font-size:12px;line-height:1.5}
.contact-reassurance{padding:72px max(30px,calc((100vw - 1120px)/2));background:#080808;color:#fff;text-align:center}.contact-reassurance .eyebrow{color:var(--gold)!important}.contact-reassurance h2{margin:7px 0 14px;font-size:46px;line-height:1.08}.contact-reassurance>p:not(.eyebrow){max-width:590px;margin:0 auto;color:#d7d2ca;font-size:16px;line-height:1.6}
@media(max-width:800px){.contact-directory{grid-template-columns:1fr;width:min(100% - 36px,1120px);margin-bottom:58px}.contact-directory-hero{padding:68px 30px 62px}.contact-new-customer,.contact-office-directory{padding:36px}.contact-reassurance{padding:58px 30px}}@media(max-width:560px){.contact-directory-hero{padding:55px 18px 50px}.contact-directory-hero h1{font-size:45px}.contact-new-customer,.contact-office-directory{padding:26px}.contact-new-customer h2,.contact-office-directory h2,.contact-reassurance h2{font-size:35px}.contact-email-list>div{grid-template-columns:1fr;gap:5px}.contact-email-list em{grid-column:auto}.contact-main-line strong{font-size:29px}.contact-reassurance{padding:50px 18px}}


/* Contact visual layer: friendly office support and restrained line icons. */
.contact-section-icon{display:block;width:39px;height:39px;margin:0 0 15px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-office-photo{display:block;width:100%;height:154px;object-fit:cover;object-position:center 48%;margin:23px 0 0}.contact-main-line span{display:flex;align-items:center;gap:7px}.contact-main-line span svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}@media(max-width:560px){.contact-office-photo{height:185px}.contact-section-icon{width:35px;height:35px}}


/* Live business phone number. */
.contact-item a{color:inherit;text-decoration:none}.contact-item a:hover{color:var(--gold)}.contact-main-number{display:block;color:#14110e;text-decoration:none;font:700 34px/1.05 Georgia,serif}.contact-main-number:hover{color:var(--gold)}@media(max-width:560px){.contact-main-number{font-size:29px}}


/* Align the footer phone number with its phone icon. */
.footer-main .contact-item:first-of-type a{position:relative;top:-2px}


/* Live Contact page department email links. */
.contact-directory-email{grid-column:2;margin-top:5px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.05em;text-decoration:none;text-transform:uppercase}.contact-directory-email:hover{color:#17120a}@media(max-width:560px){.contact-directory-email{grid-column:auto}}


/* Align the footer email address with its envelope icon. */
.footer-main .contact-item:nth-of-type(2) a{position:relative;top:-2px}

/* Footer contact icons. */
.footer-main .contact-item,.footer-main .footer-contact-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px}.footer-main .footer-contact-icon{display:block;width:18px;height:18px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.footer-main .contact-item a{position:static!important;top:auto!important;margin:0!important;overflow-wrap:anywhere}.footer-main .footer-contact-row span{display:block}


/* Contact page closing reassurance: light transition into the footer. */
.contact-reassurance{background:#f1efeb!important;color:#17130e!important;border-top:1px solid #ded8ce}.contact-reassurance .eyebrow{color:var(--gold)!important}.contact-reassurance>p:not(.eyebrow){color:#5b554c!important}


/* Legal pages: readable long-form framework for reviewed final copy. */
.legal-hero{padding:82px max(30px,calc((100vw - 1120px)/2)) 64px;text-align:center;background:#fff}.legal-hero h1{margin:7px 0 17px;font-size:clamp(50px,6vw,76px);line-height:1}.legal-hero>p:not(.eyebrow){max-width:690px;margin:0 auto;color:var(--muted);font-size:18px;line-height:1.62}
.legal-shell{width:min(1120px,calc(100% - 56px));margin:0 auto 82px;display:grid;grid-template-columns:255px minmax(0,1fr);gap:66px;align-items:start}.legal-nav{position:sticky;top:24px;padding:22px;background:#f3f0ea;border:1px solid #ded8ce;border-radius:10px}.legal-nav .eyebrow{margin:0 0 12px}.legal-nav a{display:block;padding:12px 0;border-top:1px solid #d7d0c5;color:#1b1712;text-decoration:none;font:700 17px Georgia,serif}.legal-nav a.active{color:var(--gold)}.legal-nav span{display:block;margin:16px 0;border-top:1px solid #c9c0b2}.legal-nav small{display:block;color:#696158;font-size:12px;line-height:1.5}.legal-document{max-width:720px}.legal-document-heading{padding-bottom:28px;border-bottom:1px solid #ded8ce}.legal-document-heading .eyebrow{margin-bottom:6px}.legal-document h2{margin:0 0 13px;font-size:43px;line-height:1.1}.legal-document-heading>p:not(.eyebrow){margin:0;color:var(--muted);font-size:16px;line-height:1.65}.legal-document section{padding:27px 0;border-bottom:1px solid #ded8ce}.legal-document h3{margin:0 0 8px;font-size:26px}.legal-document section p{margin:0;color:#564f47;font-size:15px;line-height:1.62}@media(max-width:760px){.legal-hero{padding:62px 30px 50px}.legal-shell{width:min(100% - 36px,1120px);grid-template-columns:1fr;gap:28px;margin-bottom:60px}.legal-nav{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0}.legal-nav .eyebrow,.legal-nav span,.legal-nav small{grid-column:1/-1}.legal-nav a{padding-right:12px}.legal-document h2{font-size:36px}}@media(max-width:480px){.legal-hero{padding:54px 18px 44px}.legal-shell{margin-bottom:50px}.legal-nav{display:block}.legal-document h2{font-size:32px}.legal-document h3{font-size:24px}}


/* Keystone Facts: comprehensive, scan-friendly customer FAQ. */
.facts-hero{padding:82px max(30px,calc((100vw - 1120px)/2)) 60px;text-align:center;background:#fff}.facts-hero h1{margin:7px 0 16px;font-size:clamp(50px,6vw,76px);line-height:1}.facts-hero>p:not(.eyebrow){max-width:700px;margin:0 auto;color:var(--muted);font-size:18px;line-height:1.6}.facts-layout{width:min(1120px,calc(100% - 56px));margin:0 auto 84px;display:grid;grid-template-columns:255px minmax(0,1fr);gap:66px;align-items:start}.facts-nav{position:sticky;top:24px;padding:22px;background:#f3f0ea;border:1px solid #ded8ce;border-radius:10px}.facts-nav .eyebrow{margin:0 0 11px}.facts-nav>a:not(.outline){display:block;padding:11px 0;border-top:1px solid #d7d0c5;color:#1b1712;text-decoration:none;font:700 16px Georgia,serif}.facts-nav>a:not(.outline):hover{color:var(--gold)}.facts-nav .outline{display:block;margin-top:18px;padding:12px 10px;text-align:center;font-size:11px}.facts-group{margin:0 0 54px;scroll-margin-top:24px}.facts-group>.eyebrow{margin-bottom:5px}.facts-group h2{margin:0 0 17px;font-size:41px;line-height:1.1}.facts-group details{border-top:1px solid #ded8ce}.facts-group details:last-child{border-bottom:1px solid #ded8ce}.facts-group summary{position:relative;padding:20px 42px 20px 0;cursor:pointer;color:#17130e;font:700 20px/1.3 Georgia,serif;list-style:none}.facts-group summary::-webkit-details-marker{display:none}.facts-group summary::after{content:"+";position:absolute;right:5px;top:16px;color:var(--gold);font:400 31px/1 Arial}.facts-group details[open] summary::after{content:"−";top:14px}.facts-group details p{max-width:720px;margin:0;padding:0 42px 20px 0;color:#585149;font-size:15px;line-height:1.65}.facts-group details p a{color:#17130e;text-decoration-color:var(--gold);text-underline-offset:3px;font-weight:700}@media(max-width:760px){.facts-hero{padding:62px 30px 48px}.facts-layout{width:min(100% - 36px,1120px);grid-template-columns:1fr;gap:28px;margin-bottom:62px}.facts-nav{position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.facts-nav .eyebrow,.facts-nav .outline{grid-column:1/-1}.facts-group{margin-bottom:43px}.facts-group h2{font-size:35px}}@media(max-width:480px){.facts-hero{padding:54px 18px 42px}.facts-nav{display:block}.facts-group h2{font-size:32px}.facts-group summary{font-size:18px;padding-top:18px;padding-bottom:18px}.facts-group details p{padding-right:8px}.facts-layout{margin-bottom:50px}}


/* Packages page: clean, reference-led time-block presentation. */
.package-image-strip{display:grid;grid-template-columns:repeat(3,1fr);height:270px;overflow:hidden;background:#efeae0}.package-image-strip img{display:block;width:100%;height:100%;object-fit:cover;border-right:4px solid #fff}.package-image-strip img:last-child{border:0}.packages-hero{padding:60px 30px 34px;text-align:center;background:#fff}.packages-hero h1{margin:7px 0 16px;font:700 clamp(51px,6vw,78px)/1.02 Arial,Helvetica,sans-serif;letter-spacing:-.04em}.packages-hero>p:not(.eyebrow){max-width:630px;margin:0 auto;color:#302c27;font-size:18px;line-height:1.48}.package-card-grid{width:min(900px,calc(100% - 56px));margin:0 auto 44px;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.package-card{padding:29px 28px 20px;border:2px solid #161616;border-radius:7px;text-align:center;background:#fff}.package-card h2{margin:0;font:700 26px/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.02em}.package-rule{display:block;width:76px;margin:13px auto;border-top:2px solid var(--gold)}.package-card strong{display:block;font:700 43px/1 Georgia,serif}.package-card .package-time{margin:8px 0 19px;font-size:17px}.package-card ul{margin:0 0 19px;padding:14px 0 12px;list-style:none;text-align:left;border-top:1px solid #cfcac2}.package-card li{position:relative;padding:5px 0 5px 29px;color:#332f2a;font-size:14px;line-height:1.35}.package-card li::before{content:"✓";position:absolute;left:0;top:4px;width:17px;height:17px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:12px;line-height:16px;text-align:center}.package-card .button{display:block;padding:13px 10px;background:var(--gold);border-color:var(--gold);color:#17120a;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.package-added-time{display:flex;align-items:center;justify-content:center;gap:22px;padding:30px max(28px,calc((100vw - 900px)/2));background:#070707;color:#fff}.package-added-time svg{width:58px;height:58px;flex:0 0 58px;fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.package-added-time h2{margin:0 0 3px;font-size:25px}.package-added-time p{margin:0;color:#ede8df;font-size:16px;line-height:1.45}.package-separate-costs{padding:42px 28px 56px;text-align:center;background:#fff}.package-separate-costs span{display:block;max-width:550px;margin:0 auto 15px;border-top:1px solid #cfcac2}.package-separate-costs p{margin:0;color:#37322c;font-size:16px}@media(max-width:700px){.package-image-strip{height:190px}.package-card-grid{width:min(100% - 36px,900px);gap:18px}.package-card{padding:24px 20px 18px}.package-card h2{font-size:22px}.package-card strong{font-size:38px}.packages-hero{padding:52px 18px 30px}.packages-hero h1{font-size:47px}}@media(max-width:520px){.package-image-strip{height:130px}.package-card-grid{grid-template-columns:1fr;margin-bottom:34px}.package-added-time{align-items:flex-start;padding:28px 22px}.package-added-time svg{width:48px;height:48px;flex-basis:48px}.package-added-time h2{font-size:22px}.package-added-time p{font-size:14px}.package-separate-costs{padding:34px 20px 45px}}


/* Packages added-time band: a softer transition into the footer. */
.package-added-time{background:#f1efeb!important;color:#17130e!important;border-top:1px solid #ded8ce}.package-added-time p{color:#575149!important}


/* Keep the added-time panel as a full-width transition beneath the packages. */
.package-added-time{width:auto;margin:0!important;justify-content:flex-start;border:0!important;border-radius:0}.package-separate-costs{padding-top:30px!important}






/* Stronger package titles without adding visual noise. */
.package-card h2{padding:12px 14px!important;background:#f4f0e8;border-left:4px solid var(--gold);color:#17130e!important}.package-card .package-rule{margin-top:15px!important}





.package-card .button{gap:0!important}.package-card .button::before,.package-card .button::after{content:none!important;display:none!important}


/* Packages: clean, text-only selection actions. */
.package-card{border-color:#bdb7ad!important;box-shadow:0 7px 16px rgba(27,22,15,.055)}.package-card .button{display:block!important;padding:13px 10px;background:var(--gold);border:1px solid #bf8d19!important;box-shadow:0 3px 0 #9b6d0e;color:#17120a;font-weight:900!important;text-transform:uppercase;letter-spacing:.06em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.package-card .button:hover{background:#e7b33b!important;transform:translateY(-2px);box-shadow:0 5px 0 #9b6d0e}


/* 5-Year Guarantee: a clear, branded promise page. */
.guarantee-hero{min-height:510px;padding:74px max(30px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;background:#080808;color:#fff}.guarantee-hero .eyebrow,.guarantee-intro .eyebrow,.guarantee-expect .eyebrow,.guarantee-details .eyebrow,.guarantee-note .eyebrow{color:var(--gold)!important}.guarantee-hero h1{margin:8px 0 18px;font-size:clamp(49px,5.4vw,76px);line-height:1.01}.guarantee-hero-copy>p:not(.eyebrow){max-width:590px;margin:0 0 26px;color:#d9d4cc;font-size:18px;line-height:1.62}.guarantee-hero .outline{display:inline-block;padding:13px 20px;color:#fff;border-color:#a97b19}.guarantee-badge-wrap{text-align:center}.guarantee-badge-wrap img{display:block;width:min(255px,100%);margin:0 auto 15px}.guarantee-badge-wrap p{margin:0;color:#e3d4ad;font:700 16px Georgia,serif}.guarantee-intro{padding:82px max(30px,calc((100vw - 900px)/2));text-align:center;background:#fff}.guarantee-intro h2{margin:7px 0 16px;font-size:clamp(39px,4.4vw,57px);line-height:1.07}.guarantee-intro>p:not(.eyebrow){max-width:690px;margin:0 auto;color:#595249;font-size:18px;line-height:1.62}.guarantee-expect{padding:78px max(30px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.82fr 1.18fr;gap:78px;background:#f3f0ea;border-top:1px solid #ded8ce;border-bottom:1px solid #ded8ce}.guarantee-expect-heading h2{margin:7px 0 17px;font-size:43px;line-height:1.08}.guarantee-expect-heading>p:not(.eyebrow){margin:0;color:#595249;font-size:16px;line-height:1.62}.guarantee-points{border-top:1px solid #cec7bc}.guarantee-points article{display:grid;grid-template-columns:48px 1fr;column-gap:16px;padding:21px 0;border-bottom:1px solid #cec7bc}.guarantee-points span{grid-row:1/3;color:var(--gold);font:700 16px Georgia,serif}.guarantee-points h3{margin:0 0 6px;font-size:24px}.guarantee-points p{grid-column:2;margin:0;color:#595249;font-size:15px;line-height:1.55}.guarantee-details{padding:66px max(30px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start;background:#fff}.guarantee-details h2{margin:7px 0 0;font-size:37px;line-height:1.1}.guarantee-details>p{margin:28px 0 0;color:#595249;font-size:16px;line-height:1.7}.guarantee-note{width:min(960px,calc(100% - 56px));margin:0 auto 82px;padding:30px 38px;display:grid;grid-template-columns:76px 1fr;gap:25px;align-items:center;background:#f3f0ea;border:1px solid #ded8ce;border-radius:9px}.guarantee-note img{width:62px;max-height:70px;object-fit:contain}.guarantee-note h2{margin:5px 0 8px;font-size:28px;line-height:1.13}.guarantee-note p:last-child{margin:0;color:#5a544b;line-height:1.55}@media(max-width:780px){.guarantee-hero,.guarantee-expect,.guarantee-details{grid-template-columns:1fr;gap:36px}.guarantee-hero{padding:64px 30px}.guarantee-badge-wrap{order:-1}.guarantee-badge-wrap img{width:190px}.guarantee-expect,.guarantee-details{padding:58px 30px}.guarantee-details>p{margin:0}.guarantee-note{margin-bottom:60px}}@media(max-width:520px){.guarantee-hero{padding:54px 18px}.guarantee-intro{padding:62px 18px}.guarantee-expect,.guarantee-details{padding:50px 18px}.guarantee-hero h1{font-size:45px}.guarantee-expect-heading h2,.guarantee-details h2{font-size:34px}.guarantee-note{width:min(100% - 36px,960px);grid-template-columns:1fr;padding:27px 24px;gap:12px}.guarantee-note img{width:52px}}

/* Guarantee badge label */
.guarantee-badge-wrap b{display:block;margin:2px 0 22px;color:var(--gold);font:800 17px/1.1 Arial,Helvetica,sans-serif;letter-spacing:.1em;text-transform:uppercase}.guarantee-badge-wrap p{margin-top:0!important}

/* Fine-tune the guarantee badge hierarchy. */
.guarantee-badge-wrap b{font-size:20px!important;margin-bottom:13px!important}.guarantee-badge-wrap p{position:relative;top:-1px}

/* Explicit two-line guarantee heading. */
.guarantee-intro h2 span{display:block}

/* Clear two-line guarantee scope note. */
.guarantee-note h2 span{display:block}

/* Show the complete room view on the Kitchen, Bathroom, and Pantry & Closet cards. */
.service-photo-grid article:nth-last-child(-n+3) img{object-fit:cover!important;object-position:center!important;background:transparent!important}

/* Supplied Privacy Policy copy, styled to match the Keystone legal-page layout. */
.privacy-document{max-width:none!important}.privacy-policy-content{max-width:900px;margin:0 auto;color:#514b43;font-size:15px;line-height:1.7}.privacy-policy-content h1{margin:0 0 5px;color:#17130e;font:700 clamp(38px,4vw,54px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:-.04em}.privacy-policy-content h2{margin:52px 0 15px;padding-top:8px;color:#17130e;font:700 29px/1.16 Georgia,'Times New Roman',serif;letter-spacing:-.025em}.privacy-policy-content h3{margin:32px 0 10px;color:#262018;font:700 21px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.02em}.privacy-policy-content p{margin:0 0 17px}.privacy-policy-content ul,.privacy-policy-content ol{margin:0 0 20px;padding-left:24px}.privacy-policy-content li{margin:7px 0}.privacy-policy-content a{color:#9d6f19;font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px;word-break:break-word}.privacy-policy-content strong{color:#282119}.privacy-policy-content [id]{scroll-margin-top:100px}.privacy-policy-content>div:last-child{margin-top:34px;padding-top:20px;border-top:1px solid #ded8ce;font-size:13px;color:#746d63}@media(max-width:620px){.privacy-policy-content{font-size:14px}.privacy-policy-content h1{font-size:39px}.privacy-policy-content h2{margin-top:40px;font-size:26px}.privacy-policy-content h3{font-size:20px}}

/* Supplied Terms of Service and Keystone-specific service terms. */
.terms-document{max-width:none!important}.terms-policy-content{max-width:900px;margin:0 auto;color:#514b43;font-size:15px;line-height:1.7}.terms-policy-content h1{margin:0 0 5px;color:#17130e;font:700 clamp(38px,4vw,54px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:-.04em}.terms-policy-content h2{margin:52px 0 15px;padding-top:8px;color:#17130e;font:700 29px/1.16 Georgia,'Times New Roman',serif;letter-spacing:-.025em}.terms-policy-content h3{margin:32px 0 10px;color:#262018;font:700 21px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.02em}.terms-policy-content p{margin:0 0 17px}.terms-policy-content ul,.terms-policy-content ol{margin:0 0 20px;padding-left:24px}.terms-policy-content li{margin:7px 0}.terms-policy-content a{color:#9d6f19;font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px;word-break:break-word}.terms-policy-content strong{color:#282119}.terms-policy-content [id]{scroll-margin-top:100px}.keystone-service-terms{margin:64px 0 12px;padding:38px;border:1px solid #d8d0c4;background:#f4f1eb}.keystone-service-terms .eyebrow{margin-bottom:7px}.keystone-service-terms h2{margin-top:0}.keystone-service-terms h3{margin-top:29px}.terms-policy-content>div:last-child{margin-top:34px;padding-top:20px;border-top:1px solid #ded8ce;font-size:13px;color:#746d63}@media(max-width:620px){.terms-policy-content{font-size:14px}.terms-policy-content h1{font-size:39px}.terms-policy-content h2{margin-top:40px;font-size:26px}.terms-policy-content h3{font-size:20px}.keystone-service-terms{margin-top:48px;padding:27px 22px}}


/* Private package-intake flow. */
.intake-page{min-height:100vh;background:#f8f7f4}.intake-header{min-height:92px;padding:0 max(30px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:#080808}.intake-header .brand-logo{width:250px;max-height:58px;object-fit:contain}.intake-exit{color:#fff;text-decoration:none;font-size:14px;font-weight:700}.intake-exit:hover{color:var(--gold)}.intake-hero{padding:66px 30px 37px;text-align:center;background:#fff}.intake-hero h1{margin:7px 0 14px;font-size:clamp(44px,5vw,66px);line-height:1.02}.intake-hero>p:not(.eyebrow){max-width:650px;margin:0 auto;color:#595249;font-size:17px;line-height:1.55}.intake-progress{width:min(900px,calc(100% - 56px));margin:0 auto;padding:26px 0;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.intake-progress span{padding:10px 6px;border-top:2px solid #d7d1c8;color:#81796e;font-size:12px;font-weight:800;letter-spacing:.04em;text-align:center;text-transform:uppercase}.intake-progress .is-current{border-color:var(--gold);color:#17130e}.intake-progress .is-complete{border-color:#17130e;color:#514b43}.intake-shell{width:min(1010px,calc(100% - 56px));margin:8px auto 80px;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:30px;align-items:start}.intake-panel,.estimate-card{padding:34px;background:#fff;border:1px solid #ddd7cd}.intake-panel h2{margin:6px 0 13px;font-size:clamp(32px,3.5vw,46px);line-height:1.08}.intake-copy{max-width:640px;margin:0 0 28px;color:#5d564d;line-height:1.6}.intake-form{display:grid;grid-template-columns:1fr 1fr;gap:17px}.intake-form label,.task-notes{display:grid;gap:7px;color:#302b25;font-size:13px;font-weight:800;letter-spacing:.02em}.intake-form label.full,.task-notes{grid-column:1/-1}.intake-form input:not([type=checkbox]):not([type=radio]),.intake-form textarea,.intake-form select,.task-notes textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #cfc8bd;background:#fff;color:#211c15;font:15px Arial,Helvetica,sans-serif;letter-spacing:normal}.intake-form textarea,.task-notes textarea{resize:vertical;line-height:1.45}.intake-form .button{grid-column:1/-1;justify-self:start;padding:14px 19px;border:1px solid var(--gold);cursor:pointer}.estimate-card{position:sticky;top:24px;background:#080808;color:#fff}.estimate-card .eyebrow{color:var(--gold)!important;margin:0 0 17px}.estimate-package{padding:0 0 19px;border-bottom:1px solid #4d473e}.estimate-package b,.estimate-package span,.estimate-package strong{display:block}.estimate-package b{font:700 20px/1.2 Georgia,serif}.estimate-package span{margin-top:5px;color:#ccc5bc;font-size:13px}.estimate-package strong{margin-top:13px;color:var(--gold);font:700 36px/1 Georgia,serif}.estimate-card dl,.confirmation-summary dl{margin:0}.estimate-card dl>div,.confirmation-summary dl>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #4d473e}.estimate-card dt{color:#ded8d0;font-size:13px}.estimate-card dd{margin:0;text-align:right;color:#fff;font-size:13px}.estimate-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:19px}.estimate-total span{font-size:14px;font-weight:800}.estimate-total b{color:var(--gold);font:700 27px Georgia,serif}.estimate-note{margin:19px 0 0;color:#c7c0b7;font-size:12px;line-height:1.55}.task-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.task-option,.choice-line{display:flex!important;grid-template-columns:none!important;gap:12px!important;align-items:flex-start;padding:16px;border:1px solid #d7d0c5;background:#fbfaf8;cursor:pointer}.task-option:hover,.choice-line:hover{border-color:var(--gold)}.task-option input,.choice-line input,.check-line input{margin:3px 0 0;accent-color:#b98517}.task-option span,.choice-line span{display:grid;gap:4px}.task-option b,.choice-line b{font-size:15px;letter-spacing:0}.task-option small,.choice-line small{color:#615a51;font-size:12px;font-weight:400;letter-spacing:0;line-height:1.4}.task-warning{margin:16px 0 0;padding:13px 15px;border-left:3px solid var(--gold);background:#f4f0e8;color:#50493f;font-size:13px;line-height:1.45}.task-warning.over{border-color:#a13e25;background:#f8e9e5;color:#742b19}.intake-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:11px}.intake-actions .outline{padding:12px 16px}.intake-actions .button{grid-column:auto}.review-list{margin:0 0 25px;border-top:1px solid #ded8ce}.review-list section{padding:18px 0;border-bottom:1px solid #ded8ce}.review-list b{display:block;margin-bottom:6px;font:700 18px Georgia,serif}.review-list span,.review-list p{color:#5c554c;font-size:14px;line-height:1.55}.review-list ul{margin:6px 0 0;padding-left:19px;color:#5c554c;font-size:14px;line-height:1.65}.check-line{grid-column:1/-1;display:flex!important;grid-template-columns:none!important;gap:11px!important;color:#5a534a!important;font-size:14px!important;font-weight:400!important;line-height:1.5;letter-spacing:0!important}.check-line a{color:#8c6417;font-weight:700}.intake-form fieldset{grid-column:1/-1;margin:0;padding:0;border:0}.intake-form legend{margin:0 0 9px;font-size:13px;font-weight:800}.choice-line{margin:9px 0}.intake-confirmation{width:min(720px,calc(100% - 56px));margin:25px auto 80px;padding:50px;text-align:center;background:#fff;border:1px solid #ded8ce}.confirmation-mark{display:grid;place-items:center;width:60px;height:60px;margin:16px auto;border:2px solid var(--gold);border-radius:50%;color:var(--gold);font-size:31px}.intake-confirmation h1{margin:5px 0 15px;font-size:clamp(43px,5vw,61px);line-height:1}.confirmation-lead{max-width:570px;margin:0 auto 28px;color:#595249;font-size:17px;line-height:1.58}.confirmation-summary{max-width:540px;margin:0 auto 25px;padding:19px 24px;text-align:left;background:#f4f1eb}.confirmation-summary p{margin:0 0 11px;color:#302b25}.confirmation-summary dl>div{border-color:#d8d0c5}.confirmation-summary dt{font-weight:800;font-size:13px}.confirmation-summary dd{margin:0;text-align:right;color:#5c554c;font-size:13px}.confirmation-note{margin:0 0 26px;color:#6b6359;font-size:13px;line-height:1.55}.confirmation-note a{color:#8a6317;font-weight:800}.intake-footer{display:flex;justify-content:space-between;gap:20px;padding:26px max(30px,calc((100vw - 1120px)/2));background:#080808;color:#d8d2ca;font-size:12px}.intake-footer a{color:#fff;text-decoration:none;font-weight:800}.intake-footer i{display:inline-block;height:12px;margin:0 10px;border-left:1px solid #5a544c;vertical-align:middle}@media(max-width:760px){.intake-header{padding:0 18px;min-height:78px}.intake-header .brand-logo{width:210px}.intake-hero{padding:52px 18px 30px}.intake-progress{width:min(100% - 36px,900px);overflow-x:auto;grid-template-columns:repeat(5,132px);justify-content:start}.intake-shell{width:min(100% - 36px,1010px);grid-template-columns:1fr;margin-bottom:55px}.estimate-card{position:static;order:-1}.task-grid{grid-template-columns:1fr}.intake-confirmation{width:min(100% - 36px,720px);padding:35px 24px}.intake-footer{padding:23px 18px;flex-direction:column;text-align:center}.intake-form{grid-template-columns:1fr}.intake-actions{gap:15px}.intake-actions .button{margin-left:auto}}@media(max-width:420px){.intake-header .brand-logo{width:175px}.intake-exit{font-size:12px}.intake-panel,.estimate-card{padding:25px 20px}.intake-progress{grid-template-columns:repeat(5,116px)}.intake-progress span{font-size:10px}.intake-actions .button,.intake-actions .outline{padding:12px 11px;font-size:11px}}


/* How It Works: customer-first service journey. */
.how-hero{min-height:510px;display:grid;grid-template-columns:1.02fr .98fr;background:#080808;color:#fff}.how-hero-copy{padding:88px max(30px,calc((100vw - 1120px)/2)) 82px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.how-hero-copy .eyebrow,.how-section-intro .eyebrow,.how-workday .eyebrow,.how-clarity .eyebrow{color:var(--gold)!important}.how-hero-copy h1{max-width:620px;margin:8px 0 19px;font-size:clamp(50px,5.3vw,76px);line-height:1.01}.how-hero-copy>p:not(.eyebrow){max-width:545px;margin:0 0 27px;color:#d7d1c8;font-size:18px;line-height:1.6}.how-hero-copy .button{padding:14px 21px}.how-hero>img{width:100%;height:100%;min-height:510px;object-fit:cover;object-position:center}.how-journey{width:min(1120px,calc(100% - 56px));margin:0 auto;padding:86px 0 82px;display:grid;grid-template-columns:.78fr 1.22fr;gap:88px}.how-section-intro h2{margin:7px 0 15px;font-size:clamp(37px,4vw,54px);line-height:1.08}.how-section-intro>p:not(.eyebrow){max-width:390px;margin:0;color:#5b544b;font-size:16px;line-height:1.62}.how-steps{border-top:1px solid #d4cdc2}.how-steps article{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #d4cdc2}.how-steps span{color:var(--gold);font:700 19px Georgia,serif;letter-spacing:.04em}.how-steps h3{margin:0 0 6px;font-size:25px;line-height:1.14}.how-steps p{max-width:570px;margin:0;color:#5d564d;font-size:15px;line-height:1.55}.how-workday{padding:78px max(30px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:.75fr 1.25fr;gap:82px;background:#f3f0ea;border-top:1px solid #ded8ce;border-bottom:1px solid #ded8ce}.how-workday h2{margin:7px 0 16px;font-size:clamp(37px,4vw,52px);line-height:1.08}.how-workday>div>p:not(.eyebrow){max-width:385px;margin:0;color:#5b544b;font-size:16px;line-height:1.62}.how-workday-points{border-top:1px solid #cbc3b8}.how-workday-points article{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid #cbc3b8}.how-workday-points svg{width:38px;height:38px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.how-workday-points h3{margin:0 0 6px;font-size:23px}.how-workday-points p{margin:0;color:#5a534a;font-size:15px;line-height:1.53}.how-clarity{padding:82px max(30px,calc((100vw - 850px)/2)) 88px;text-align:center;background:#fff}.how-clarity h2{max-width:780px;margin:7px auto 16px;font-size:clamp(38px,4.4vw,57px);line-height:1.07}.how-clarity>p:not(.eyebrow){max-width:650px;margin:0 auto 26px;color:#5c554c;font-size:16px;line-height:1.62}.how-clarity .outline{display:inline-block;padding:13px 20px}@media(max-width:780px){.how-hero{grid-template-columns:1fr}.how-hero-copy{padding:64px 30px}.how-hero>img{min-height:310px;height:310px;order:-1}.how-journey,.how-workday{grid-template-columns:1fr;gap:37px}.how-journey{width:min(100% - 56px,1120px);padding:64px 0}.how-workday{padding:60px 30px}.how-clarity{padding:64px 30px}.how-section-intro>p:not(.eyebrow),.how-workday>div>p:not(.eyebrow){max-width:620px}}@media(max-width:520px){.how-hero-copy{padding:54px 18px}.how-hero-copy h1{font-size:45px}.how-hero>img{height:260px;min-height:260px}.how-journey{width:min(100% - 36px,1120px);padding:53px 0}.how-workday{padding:52px 18px}.how-clarity{padding:55px 18px}.how-steps article{grid-template-columns:48px 1fr;gap:11px}.how-workday-points article{grid-template-columns:39px 1fr;gap:12px}.how-workday-points svg{width:32px;height:32px}.how-steps h3,.how-workday-points h3{font-size:21px}}

/* How It Works: full-width planning hero with a 65% copy area. */
.how-hero{display:block;position:relative;isolation:isolate;min-height:620px;background:#111 url('assets/how-it-works-planning-hero-v3.webp') center 18%/cover no-repeat;color:#fff}.how-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.67) 48%,rgba(0,0,0,.30) 100%)}.how-hero-copy{position:relative;z-index:1;width:65%;max-width:none;min-height:620px;padding:88px 48px 88px max(34px,calc((100vw - 1360px)/2));background:transparent}.how-hero-copy h1{max-width:760px}.how-hero-copy>p:not(.eyebrow){max-width:650px}.how-hero>img{display:none!important}@media(max-width:820px){.how-hero,.how-hero-copy{min-height:570px}.how-hero-copy{width:100%;padding:72px 34px}.how-hero::before{background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.43))}}@media(max-width:520px){.how-hero,.how-hero-copy{min-height:535px}.how-hero-copy{padding:62px 22px}.how-hero-copy h1{font-size:45px}}


/* Deals page: explicit customer email preferences. */
.deals-signup .deals-preferences-form{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px;margin-top:20px}.deals-signup .deals-preferences-form input[type=text],.deals-signup .deals-preferences-form input[type=email]{padding:13px;border:0;font:15px Arial}.deals-signup .deals-preferences-form fieldset{grid-column:1/-1;margin:5px 0 2px;padding:0;border:0}.deals-signup .deals-preferences-form legend{margin:0 0 10px;color:#eee8df;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.deals-signup .deals-preferences-form fieldset label{display:flex;gap:11px;align-items:flex-start;margin:8px 0;padding:12px 13px;background:#171716;border:1px solid #49463f;cursor:pointer}.deals-signup .deals-preferences-form fieldset label:hover{border-color:var(--gold)}.deals-signup .deals-preferences-form input[type=checkbox]{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;accent-color:var(--gold)}.deals-signup .deals-preferences-form fieldset span{display:grid;gap:3px}.deals-signup .deals-preferences-form fieldset b{color:#fff;font-size:14px;letter-spacing:0}.deals-signup .deals-preferences-form fieldset small{color:#c8c1b7;font-size:12px;line-height:1.4}.deals-signup .deals-preferences-form button{grid-column:1/-1;justify-self:start;padding:13px 20px;cursor:pointer}.deals-signup>small{line-height:1.45}@media(max-width:560px){.deals-signup .deals-preferences-form{grid-template-columns:1fr!important}.deals-signup .deals-preferences-form button{width:100%}}


/* Final spacing polish for the Deals preference form. */
.deals-signup .deals-preferences-form input:first-of-type{grid-column:auto!important}.deals-signup .deals-preferences-form fieldset span{gap:0!important}.deals-signup .deals-preferences-form fieldset b{margin:0!important;line-height:1.22}.deals-signup .deals-preferences-form fieldset small{display:block!important;margin:1px 0 0!important;line-height:1.32!important}


.deals-signup .deals-form-error{grid-column:1/-1;min-height:0;margin:0;color:#ffd6c8;font-size:12px;line-height:1.35}.deals-signup .deals-form-error:not(:empty){padding:9px 11px;border-left:3px solid #d97858;background:#3c1f19}


/* Intake footer: help left, legal center, copyright right. */
.intake-footer{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center}.intake-footer-legal{justify-self:center}.intake-footer-copyright{justify-self:end;text-align:right}@media(max-width:760px){.intake-footer{display:flex!important}.intake-footer-legal,.intake-footer-copyright{justify-self:auto;text-align:center}}


/* Intake Step 2: community discount and marketing-source fields. */
.intake-discounts{grid-column:1/-1;margin:2px 0 0;padding:18px;border:1px solid #d7d0c5;background:#f7f4ee}.intake-discounts legend{padding:0 5px;margin-left:-5px;color:#302b25;font-size:14px;font-weight:800}.intake-discounts>p{margin:3px 0 13px;color:#665e54;font-size:12px;line-height:1.45}.intake-discounts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px}.intake-discounts legend,.intake-discounts>p{grid-column:1/-1}.intake-discounts label{display:flex!important;grid-template-columns:none!important;gap:8px!important;align-items:center;color:#4e473e!important;font-size:13px!important}.intake-discounts input{width:15px;height:15px;margin:0;accent-color:#b98517}@media(max-width:520px){.intake-discounts{grid-template-columns:1fr}}


/* Intake discounts: one community discount or one coupon, never both. */
.intake-discounts input[type=radio]{border-radius:50%}.estimate-discount dt,.estimate-discount dd{color:#e6bb58!important;font-weight:800}#coupon-code-field[hidden]{display:none!important}


/* Intake Step 2: conditional referral question and clear billing reassurance. */
#referral-name-field[hidden],#coupon-code-field[hidden]{display:none!important}.estimate-billing-note{margin:16px 0 0!important;padding:12px 0 0;border-top:1px solid #4d473e;color:#f0dfb2!important;font-size:12px!important;font-weight:800;line-height:1.45}


/* Intake Step 2: deliberate address and contact grid. */
#intake-details-form{grid-template-columns:repeat(6,minmax(0,1fr))!important}#intake-details-form>.full,#intake-details-form>.intake-discounts{grid-column:1/-1!important}#intake-details-form>.half{grid-column:span 3}#intake-details-form>.third{grid-column:span 2}@media(max-width:560px){#intake-details-form{grid-template-columns:1fr!important}#intake-details-form>.half,#intake-details-form>.third{grid-column:1/-1!important}}


/* Intake contact-field explanations. */
.field-info{display:inline-grid;place-items:center;width:15px;height:15px;margin-left:4px;border:1px solid #aa7b1c;border-radius:50%;color:#a47718;font:700 10px/1 Georgia,serif;vertical-align:1px;cursor:help}.field-info:focus{outline:2px solid #aa7b1c;outline-offset:2px}


/* Intake contact disclosure popovers. */
.intake-contact-field{position:relative}.field-label{display:inline-flex;align-items:center;gap:4px;line-height:1.2}.field-info{display:inline-grid!important;place-items:center;width:16px;height:16px;margin:0!important;padding:0;border:1px solid #aa7b1c;border-radius:50%;background:#fff;color:#a47718;font:700 10px/1 Georgia,serif;vertical-align:0;cursor:pointer}.field-info:focus{outline:2px solid #aa7b1c;outline-offset:2px}.field-popover{position:absolute;z-index:10;top:29px;left:0;right:0;padding:11px 12px;border:1px solid #b88c28;background:#17130e;color:#fff;font-size:12px!important;font-weight:400!important;letter-spacing:0!important;line-height:1.42;box-shadow:0 10px 24px rgba(22,18,13,.18)}


/* Intake Step 2: one clear discount path at a time. */
.intake-discounts{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}.intake-discounts .discount-selector,.intake-discounts .coupon-selector{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;padding:0!important;border:0!important;background:transparent!important}.intake-discounts .discount-selector>select,.intake-discounts .coupon-selector>input{width:100%;box-sizing:border-box;padding:13px;border:1px solid #cfc8bd;background:#fff;color:#211c15;font:15px Arial,Helvetica,sans-serif}.community-discount-options{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;padding-top:3px}.community-discount-options>p{grid-column:1/-1;margin:0 0 1px!important}.community-discount-options label{display:flex!important;grid-template-columns:none!important;gap:8px!important;align-items:center;padding:0!important;border:0!important;background:transparent!important}@media(max-width:520px){.community-discount-options{grid-template-columns:1fr}}


/* Keep Intake legal links side by side at every width. */
.intake-footer-legal{display:flex!important;align-items:center;justify-content:center;gap:11px;white-space:nowrap}.intake-footer-legal i{display:block!important;flex:0 0 1px;height:14px!important;margin:0!important;border-left:1px solid #5a544c!important}

/* Ensure inactive discount follow-up panels are genuinely hidden. */
.community-discount-options[hidden],#coupon-code-field[hidden]{display:none!important}


/* Intake Step 2: clear, itemized running estimate. */
.estimate-card .estimate-lines>div{padding:11px 0}.estimate-card .estimate-totals{margin-top:5px;padding-top:7px;border-top:3px double #847963}.estimate-card .estimate-totals>div{padding:9px 0;border-bottom:0}.estimate-card .estimate-totals dt,.estimate-card .estimate-totals dd{font-weight:800}.estimate-card .estimate-totals small{color:#c7c0b7;font-size:10px;font-weight:400}.estimate-card .estimate-discount dt,.estimate-card .estimate-discount dd{color:#e6bb58!important}.estimate-card .estimate-coupon dd{color:#e6bb58}.estimate-card .estimate-total{margin-top:7px;padding-top:15px;border-top:1px solid #4d473e}.estimate-card .estimate-total span{text-transform:uppercase;letter-spacing:.05em;font-size:11px}.estimate-card dt{position:relative}.estimate-card .estimate-info{vertical-align:1px}.estimate-card .estimate-popover{top:22px;left:0;right:auto;width:235px;box-sizing:border-box;text-align:left}.estimate-card .estimate-lines{margin-top:1px}.estimate-card .estimate-lines dt{display:flex;align-items:center;gap:6px}.estimate-card .estimate-lines .estimate-info{margin-left:auto;flex:0 0 auto;vertical-align:0}.estimate-card .estimate-lines .estimate-popover{left:auto;right:0}

/* Tighter subtotal, discount, and tax rows in the intake estimate. */
.estimate-card .estimate-totals>div{padding:5px 0!important}

/* Center the intake estimate billing reassurance. */
.estimate-billing-note{text-align:center}


/* Intake Step 3: searchable customer task builder. */
.task-builder-form{display:grid;gap:23px}.task-search-panel,.task-list-panel{padding:22px;border:1px solid #ddd5c9;background:#fbfaf8}.task-search-panel .eyebrow,.task-list-heading .eyebrow{margin:0 0 5px}.task-search-panel h3,.task-list-heading h3{margin:0;font:700 25px/1.15 Georgia,serif;color:#211c15}.task-search-panel>p:not(.eyebrow),.task-list-heading>p{margin:8px 0 0;color:#625b52;font-size:14px;line-height:1.5}.task-search-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:17px}.task-search-controls label{display:grid;gap:7px;color:#302b25;font-size:13px;font-weight:800}.task-search-controls input,.task-request-row input,.task-request-row textarea,.task-request-row select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #cfc8bd;background:#fff;color:#211c15;font:14px Arial,Helvetica,sans-serif}.task-search-controls .button{padding:13px 18px;cursor:pointer}.task-list-heading{display:flex;justify-content:space-between;gap:26px;align-items:end;padding-bottom:17px;border-bottom:1px solid #ded7cc}.task-list-heading>p{max-width:290px}.task-list-empty{padding:28px 0 5px;color:#6a6258;font-size:14px;line-height:1.5}.task-list-columns,.task-request-row{display:grid;grid-template-columns:1.15fr 1.6fr .9fr .8fr auto;gap:13px}.task-list-columns{padding:15px 0 9px;color:#746b60;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.task-request-row{padding:16px 0;border-top:1px solid #ded7cc;align-items:start}.task-name{display:grid;gap:4px;padding-top:3px}.task-name b{font-size:15px;letter-spacing:0}.task-name small{color:#887b6a;font-size:11px;line-height:1.3}.task-request-row label{display:grid;gap:6px;color:#51493f;font-size:11px;font-weight:800;letter-spacing:.02em}.task-details{display:grid;gap:10px}.task-request-row textarea{min-height:67px;resize:vertical}.task-remove{align-self:start;margin-top:19px;padding:0;border:0;background:transparent;color:#906519;font:700 12px Arial,Helvetica,sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.task-remove:hover{color:#4f3510}.task-builder-form .task-warning{margin:0}.task-builder-form .intake-actions{margin-top:0}@media(max-width:850px){.task-list-columns{display:none}.task-request-row{grid-template-columns:1fr 1fr}.task-name{grid-column:1/-1}.task-remove{margin-top:0;justify-self:start}.task-list-heading{display:block}.task-list-heading>p{max-width:none}}@media(max-width:560px){.task-search-controls,.task-request-row{grid-template-columns:1fr}.task-search-controls .button{width:100%}.task-request-row{gap:12px}.task-list-panel,.task-search-panel{padding:19px}.task-remove{margin-top:0}}


/* Intake Step 3: each task reads as one clear three-line request. */
.task-list-columns{display:none!important}.task-request-row{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:18px 0!important}.task-request-header{display:flex;justify-content:space-between;align-items:start;gap:18px}.task-request-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.task-request-questions label,.task-additional-details{display:grid;gap:6px;color:#51493f;font-size:11px;font-weight:800;letter-spacing:.02em}.task-additional-details{margin-top:12px}.task-remove{margin:3px 0 0!important;white-space:nowrap}.task-details{display:contents}@media(max-width:620px){.task-request-questions{grid-template-columns:1fr}.task-request-header{gap:12px}}


/* Prevent task-row titles from inheriting the site's global header treatment. */
.task-request-header{min-height:0!important;padding:0!important;background:transparent!important;color:inherit!important}.task-request-header .task-name{align-items:flex-start;text-align:left}.task-request-questions{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}

/* Intake Step 3: ordered task-card fields. */
.task-request-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.task-request-secondary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:12px}.task-request-primary label,.task-request-secondary label{display:grid;gap:6px;color:#51493f;font-size:11px;font-weight:800;letter-spacing:.02em}.task-request-secondary .task-materials{grid-column:1/-1}@media(max-width:620px){.task-request-primary{grid-template-columns:1fr}.task-request-secondary{grid-template-columns:1fr}}

/* Intake Step 3: keep the rolling-list heading and its helper copy together. */
.task-list-heading{display:block;align-items:initial}.task-list-heading h3{white-space:nowrap}.task-list-heading>p{max-width:none;margin:8px 0 0}@media(max-width:620px){.task-list-heading h3{white-space:normal}}

/* Intake Step 5: only show availability after a follow-up choice. */
.schedule-followup-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.schedule-followup-details[hidden]{display:none}.schedule-followup-details .full{grid-column:1/-1}@media(max-width:620px){.schedule-followup-details{grid-template-columns:1fr}}
.schedule-followup-details label[hidden]{display:none!important}

/* Intake Step 5: rolling availability choices. */
.schedule-followup-details{grid-template-columns:1fr}.availability-builder{padding:20px;border:1px solid #ddd5c9;background:#fbfaf8}.availability-builder .eyebrow{margin:0 0 5px}.availability-builder h3{margin:0;font:700 23px/1.15 Georgia,serif;color:#211c15}.availability-builder>p:not(.eyebrow):not(.availability-warning){margin:8px 0 0;color:#625b52;font-size:14px;line-height:1.5}.availability-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:17px}.availability-controls label{display:grid;gap:7px;color:#302b25;font-size:13px;font-weight:800}.availability-controls .outline{height:44px;white-space:nowrap}.availability-controls .outline:disabled{opacity:.5;cursor:not-allowed}.availability-warning{margin:13px 0 0;color:#625b52;font-size:13px;line-height:1.4}.availability-warning.is-error{color:#9c331f;font-weight:800}.availability-list{display:grid;gap:8px;margin-top:12px}.availability-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border:1px solid #ded7cc;background:#fff}.availability-row span{display:grid;gap:3px}.availability-row b{font-size:14px;color:#211c15}.availability-row small{color:#746b60;font-size:12px}@media(max-width:620px){.availability-controls{grid-template-columns:1fr}.availability-controls .outline{width:100%}}

/* Intake Step 5: make the availability builder span the full form width. */
.intake-form .schedule-followup-details{grid-column:1/-1;width:100%;box-sizing:border-box}.schedule-followup-details .availability-builder{width:100%;box-sizing:border-box}

/* Intake Step 2: keep the discount panel flush with the form grid. */
#intake-details-form .intake-discounts{grid-column:1/-1!important;width:100%;min-inline-size:0;box-sizing:border-box;margin:0}

/* Intake Step 2: keep the discount block visually neutral. */
#intake-details-form .intake-discounts{background:transparent}

/* Intake Step 4: detailed, priority-sorted task review. */
.review-task-list{display:grid;gap:12px;margin-top:12px}.review-task{padding:16px;border:1px solid #ded7cc;background:#fbfaf8}.review-task-heading{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.review-list .review-task-heading b{margin:0;font:700 17px Georgia,serif;color:#211c15}.review-task-heading span{color:#946716;font-size:11px;font-weight:800;text-align:right}.review-task dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin:14px 0 0}.review-task dl>div{display:grid;gap:3px}.review-task dt{color:#746b60;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.review-task dd{margin:0;color:#51493f;font-size:13px;line-height:1.4}.review-list .review-task p{margin:13px 0 0;color:#51493f;font-size:13px;line-height:1.45}.review-list .review-task p strong{color:#302b25}@media(max-width:520px){.review-task dl{grid-template-columns:1fr}.review-task-heading{align-items:flex-start;flex-direction:column;gap:5px}.review-task-heading span{text-align:left}}

/* Intake Step 5: request-delivery status. */
.submission-status{grid-column:1/-1;margin:0;padding:12px 14px;border-left:3px solid #b98517;background:#f4f0e8;color:#50493f;font-size:13px;line-height:1.45}.submission-status.is-error{border-color:#9c331f;background:#f8e9e5;color:#742b19}

/* Intake Step 6: confirmation actions and customer printout. */
.confirmation-actions{display:flex;justify-content:center;align-items:center;gap:12px}.confirmation-actions .outline,.confirmation-actions .button{padding:13px 18px}@media(max-width:520px){.confirmation-actions{flex-direction:column}.confirmation-actions .outline,.confirmation-actions .button{width:100%;box-sizing:border-box}}@media print{.intake-header,.intake-hero,.intake-progress,.intake-footer,.confirmation-actions,.intake-confirmation>.eyebrow,.confirmation-mark,.intake-confirmation>h1,.confirmation-lead{display:none!important}.intake-page{background:#fff!important}.intake-confirmation{width:100%!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}.confirmation-summary{max-width:none!important;margin:0!important;background:#fff!important;border:1px solid #bbb!important}}

/* Intake Step 6: printed task-list summary. */
.confirmation-task-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.confirmation-task-list li{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid #d8d0c5}.confirmation-task-list li:last-child{padding-bottom:0;border-bottom:0}.confirmation-task-list strong{color:#302b25;font-size:13px}.confirmation-task-list small{color:#6b6359;font-size:11px;line-height:1.4}

/* Intake Step 6: customer-facing confirmation record. */
.confirmation-logo{display:block;width:min(250px,100%);height:auto;margin:0 auto 24px;box-sizing:border-box}.confirmation-customer{display:grid;grid-template-columns:1fr;gap:1px;margin:0 0 20px;padding:0 0 18px;border:0;border-bottom:1px solid #d8d0c5;background:transparent;text-align:center}.confirmation-customer .eyebrow,.confirmation-customer strong{grid-column:1/-1}.confirmation-customer .eyebrow{margin:0 0 3px;text-align:center}.confirmation-customer strong{color:#211c15;font:700 18px Georgia,serif;text-align:left}.confirmation-customer span{grid-column:1/-1;color:#5c554c;font-size:13px;line-height:1.35;text-align:left}.confirmation-customer .confirmation-address-label{margin-top:14px;color:#211c15;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.confirmation-customer .confirmation-phone-label{margin-top:13px;color:#211c15;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.confirmation-customer .confirmation-phone{margin-top:1px}@media(max-width:520px){.confirmation-customer{grid-template-columns:1fr}.confirmation-customer span{grid-column:1/-1}}.confirmation-detail-notes{margin-top:18px;text-align:left}.confirmation-detail-note{margin:0 0 10px!important;color:#6b6359!important;font-size:12px!important;line-height:1.55!important}.confirmation-detail-note:last-child{margin-bottom:0!important}

/* Intake Step 6: two-column customer order header. */
.confirmation-order{margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid #d8d0c5}.confirmation-order-heading{margin:0 0 17px!important;font-size:13px!important;letter-spacing:.11em!important;text-align:center}.confirmation-order-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.9fr);gap:22px;align-items:start}.confirmation-order .confirmation-customer{margin:0;padding:0;border:0}.confirmation-status{min-height:100%;padding:16px 18px;border-left:3px solid #b98517;background:#f7f3eb}.confirmation-status .eyebrow{margin:0 0 12px}.confirmation-status dl{display:grid;gap:0;margin:0}.confirmation-status dl>div{display:grid;grid-template-columns:1fr;gap:3px;padding:9px 0;border-bottom:0}.confirmation-status dl>div:first-child{padding-top:0}.confirmation-status dl>div:last-child{padding-bottom:0}.confirmation-status dt{color:#746b60;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.confirmation-status dd{margin:0!important;color:#5c554c;font:400 13px/1.35 Arial,Helvetica,sans-serif!important;text-align:left!important;white-space:nowrap}@media(max-width:620px){.confirmation-order-header{grid-template-columns:1fr;gap:18px}.confirmation-status{border-left:0;border-top:3px solid #b98517}}

.confirmation-estimated-cost{margin-top:14px!important;padding-top:13px;border-top:2px solid #8d7a4f}.confirmation-estimated-cost dt{color:#211c15!important;font-weight:800!important}.confirmation-estimated-cost dd{color:#a36f12!important;font:700 22px Georgia,serif!important}

.confirmation-summary dl>div.confirmation-tasks{display:block;padding:15px 0}.confirmation-tasks dt{margin:0 0 11px}.confirmation-tasks dd{margin:0;text-align:left}.confirmation-task-list{gap:11px}.confirmation-task-list li{gap:4px;padding:0 0 11px}.confirmation-task-list strong,.confirmation-task-list small,.confirmation-task-list .confirmation-task-description{text-align:left}.confirmation-task-description{color:#5c554c;font-size:12px;line-height:1.45}.confirmation-task-list small{font-size:11px}

.confirmation-summary>dl>div:first-child{padding-top:8px}


/* Homepage final polish: stronger first impression and cleaner visual rhythm. */
.showcase-hero{min-height:510px!important;border-bottom:1px solid #d8d2c8!important}.showcase-copy{min-height:510px!important;padding:68px clamp(56px,7.5vw,132px)!important;background:linear-gradient(115deg,#fff 0%,#fffdf9 100%)!important}.showcase-copy h1{max-width:540px!important;font-size:clamp(48px,4.45vw,68px)!important;line-height:1.04!important;margin-bottom:21px!important}.showcase-copy p:not(.eyebrow){max-width:455px!important;font-size:16px!important;line-height:1.62!important;margin-bottom:29px!important}.showcase-copy .eyebrow{margin-bottom:14px!important}.gold-rule{width:52px!important;margin-bottom:28px!important}.showcase-copy .button{min-height:46px!important;padding:14px 23px!important;box-shadow:0 7px 16px rgba(6,6,6,.15);transition:transform .2s ease,box-shadow .2s ease}.showcase-copy .button:hover{transform:translateY(-2px);box-shadow:0 11px 22px rgba(6,6,6,.22)}.showcase-hero>img{min-height:510px!important;height:510px!important;object-position:center center!important}
.service-overview{padding-top:70px!important;padding-bottom:62px!important}.service-overview h2{margin-bottom:30px!important}.category-row{box-shadow:0 10px 25px rgba(25,20,14,.045)}.category-row article{transition:background .18s ease,transform .18s ease}.category-row article:hover{position:relative;z-index:1;background:#fffdf9;transform:translateY(-3px);box-shadow:0 10px 18px rgba(24,19,13,.07)}
.popular{padding-top:68px!important;padding-bottom:72px!important;background:#fcfbf8}.section-line{margin-bottom:27px!important}.photo-row a{overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.photo-row a:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(24,19,13,.12)}.photo-row img{transition:transform .35s ease}.photo-row a:hover img{transform:scale(1.035)}
.trust-panel{padding-top:62px!important;padding-bottom:62px!important}.home-bridge{padding-top:86px!important;padding-bottom:86px!important}.home-steps{padding-top:12px!important}.home-steps li{padding:17px 0!important}
@media(max-width:980px){.showcase-hero{min-height:unset!important}.showcase-copy{min-height:unset!important;padding:62px clamp(34px,7vw,84px)!important}.showcase-hero>img{min-height:440px!important;height:440px!important}.service-overview{padding-top:58px!important;padding-bottom:54px!important}.popular{padding-top:54px!important;padding-bottom:58px!important}.home-bridge{padding-top:62px!important;padding-bottom:62px!important}}
@media(max-width:620px){.showcase-copy{padding:52px 26px!important}.showcase-copy h1{font-size:45px!important}.showcase-hero>img{min-height:350px!important;height:350px!important}.service-overview{padding-top:48px!important;padding-bottom:46px!important}.popular{padding-top:46px!important;padding-bottom:48px!important}.home-bridge{padding-top:52px!important;padding-bottom:52px!important}.category-row article:hover,.photo-row a:hover{transform:none}}


/* Homepage hero correction: wider copy column and cache-busted replacement art. */
.showcase-hero{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important}.showcase-copy{padding:70px clamp(50px,5vw,86px)!important}.showcase-copy h1{max-width:610px!important}.showcase-copy p:not(.eyebrow){max-width:505px!important}.showcase-hero>img{object-position:62% center!important}
@media(max-width:980px){.showcase-hero{grid-template-columns:1fr!important}.showcase-copy{padding:62px clamp(34px,7vw,84px)!important}.showcase-hero>img{object-position:center center!important}}


/* Homepage desktop hero: balanced composition for large screens. */
@media (min-width:981px){
  .showcase-hero{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    min-height:560px!important;
  }
  .showcase-copy{
    min-height:560px!important;
    padding:78px clamp(62px,6.7vw,128px)!important;
    justify-content:center!important;
  }
  .showcase-copy h1{
    max-width:760px!important;
    font-size:clamp(54px,3.75vw,67px)!important;
    line-height:1.03!important;
    margin-bottom:18px!important;
  }
  .showcase-copy p:not(.eyebrow){max-width:510px!important;}
  .showcase-hero>img{
    min-height:560px!important;
    height:560px!important;
    object-position:center center!important;
  }
}

/* Keep the footer guarantee a clear, polished destination. */
.footer-guarantee{color:inherit!important;text-decoration:none!important}.footer-guarantee:hover{color:var(--gold)!important}


.hero-service-area{font-weight:700;color:#a96f06;margin-top:1rem}.local-hero,.local-overview,.local-next,.area-city-section{max-width:1180px;margin:0 auto;padding:5rem 2rem}.local-hero{background:#f8f6f1}.local-hero h1{max-width:760px;font-size:clamp(2.8rem,5.5vw,5.4rem);margin:.6rem 0 1.25rem}.local-hero>p:not(.eyebrow){font-size:1.14rem;max-width:690px;line-height:1.65}.hero-actions{display:flex;gap:1.3rem;align-items:center;margin-top:2rem;flex-wrap:wrap}.text-link{font-weight:700;color:#17120d}.local-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);gap:5rem;align-items:start}.local-overview h2,.area-city-section h2,.local-next h2{font-size:clamp(2rem,3.5vw,3.3rem);margin:.5rem 0 1rem}.local-overview>div>p{line-height:1.7}.local-next{text-align:center;background:#efede8;color:#17120d;border-top:1px solid #ded8cd;border-bottom:1px solid #ded8cd}.local-next p{max-width:550px;margin:0 auto 1.7rem;line-height:1.65}.area-city-section{border-top:1px solid #ded8cd}.area-city-section>p:not(.eyebrow){max-width:660px;line-height:1.65}.area-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}.area-city-card{border:1px solid #ded8cd;padding:1.35rem;text-decoration:none;color:#17120d;display:flex;flex-direction:column;gap:.45rem;min-height:158px}.area-city-card:hover{border-color:#b67d14;background:#fbf8f1}.area-city-card strong{font-family:Georgia,serif;font-size:1.3rem}.area-city-card>span:not(.area-city-button){font-size:.92rem;line-height:1.4}.area-city-button{align-self:center;margin-top:auto;background:#0a0a0a;color:#fff;padding:.55rem .8rem;font-size:.72rem!important;line-height:1!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.area-city-card:hover .area-city-button{background:#b67d14}@media(max-width:760px){.local-hero,.local-overview,.local-next,.area-city-section{padding:3.5rem 1.25rem}.local-overview{grid-template-columns:1fr;gap:2rem}.area-city-grid{grid-template-columns:1fr}.local-hero h1{font-size:3rem}}

.city-hero-has-image{max-width:none;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,1fr);background:#f8f6f1}.city-hero-has-image .local-hero-copy{max-width:1180px;margin-left:auto;width:100%;padding:5rem 3rem 5rem max(2rem,calc((100vw - 1180px)/2))}.city-hero-media{min-height:510px;overflow:hidden}.city-hero-media img{width:100%;height:100%;object-fit:cover;display:block}.area-city-card:has(.area-city-thumb){padding-top:0;overflow:hidden}.area-city-thumb{width:calc(100% + 2.7rem);height:116px;object-fit:cover;margin:-0rem -1.35rem .55rem;display:block}@media(max-width:760px){.city-hero-has-image{grid-template-columns:1fr}.city-hero-has-image .local-hero-copy{padding:3.5rem 1.25rem}.city-hero-media{min-height:260px}}

/* City hero uses the same visual language as the homepage. */
.city-showcase-hero{min-height:560px!important}.city-showcase-hero .showcase-copy{min-height:560px!important}.city-showcase-hero>img{min-height:560px!important;height:560px!important;object-position:center center!important}@media(max-width:980px){.city-showcase-hero,.city-showcase-hero .showcase-copy{min-height:unset!important}.city-showcase-hero>img{min-height:440px!important;height:440px!important}}@media(max-width:620px){.city-showcase-hero>img{min-height:350px!important;height:350px!important}}
/* League City stays image-free until the approved local photography is ready. */
.city-hero-no-image{grid-template-columns:1fr!important;min-height:440px!important}.city-hero-no-image .showcase-copy{min-height:440px!important;align-items:flex-start}.city-hero-no-image .showcase-copy p:not(.eyebrow){max-width:585px!important}

/* Text-only service-area directory city lockups */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.area-city-card{padding:0;gap:0;overflow:hidden;background:#fff;min-height:238px;border-radius:30px}
.area-city-card:hover{background:#fbf8f1}
.area-city-wordmark{min-height:122px;padding:1.35rem 1.2rem 1.1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-bottom:3px solid var(--gold);background:#080808}
.area-city-wordmark span{display:block;text-transform:uppercase}
.area-city-wordmark-keystone{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.05rem,1.65vw,1.32rem);font-weight:700;letter-spacing:.25em;line-height:1;padding-left:.25em}
.area-city-wordmark-handyman{color:var(--gold);margin-top:.35rem;font-family:Arial,Helvetica,sans-serif;font-size:.52rem;font-weight:900;letter-spacing:.52em;line-height:1;padding-left:.52em}
.area-city-wordmark-place{color:#fff;margin-top:.85rem;font-family:Arial,Helvetica,sans-serif;font-size:.76rem;font-weight:800;letter-spacing:.17em;line-height:1.1}
.area-city-card>span:not(.area-city-button){display:block;padding:1.05rem 1.35rem 0;font-size:.92rem;line-height:1.4}
.area-city-card .area-city-button{margin:1rem auto 1.25rem;align-self:center}
@media(max-width:760px){.area-city-wordmark{min-height:112px}.area-city-wordmark-keystone{font-size:1.2rem}}
/* City wordmark side rules */
.area-city-wordmark-handyman{display:flex!important;align-items:center;justify-content:center;gap:.55rem;width:100%;white-space:nowrap}
.area-city-wordmark-handyman::before,.area-city-wordmark-handyman::after{content:"";display:block;width:clamp(18px,3vw,34px);height:1px;background:var(--gold);flex:0 0 auto}
/* City directory crest watermarks */
.area-city-wordmark{position:relative;isolation:isolate;overflow:hidden}
.area-city-wordmark>*:not(.area-city-crest-watermark){position:relative;z-index:1}
.area-city-crest-watermark{position:absolute;z-index:0;left:14px;top:50%;width:104px;height:104px;object-fit:contain;transform:translateY(-50%);opacity:.20;pointer-events:none}
/* Enhanced city service-guide pages */
.city-guide-hero{position:relative;isolation:isolate;min-height:510px;background:#080808 url('assets/city-hero-alvin-consultation-v2.webp') center top/cover no-repeat;border-bottom:3px solid var(--gold)}
.city-guide-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.87) 0%,rgba(0,0,0,.72) 49%,rgba(0,0,0,.48) 100%)}
.city-guide-hero::after{content:"";position:absolute;z-index:-1;right:4%;top:50%;width:290px;height:290px;transform:translateY(-50%);background:url('assets/keystone-crest-gold-transparent.webp') center/contain no-repeat;opacity:.12}
.city-guide-copy{min-height:510px;display:flex;flex-direction:column;justify-content:center;padding:5.5rem max(2rem,calc((100vw - 1180px)/2));color:#fff}
.city-guide-copy h1{max-width:720px;font-size:clamp(3.15rem,5.4vw,5.5rem);margin:.55rem 0 1.25rem}
.city-guide-copy>p:not(.eyebrow){max-width:620px;font-size:1.1rem;line-height:1.7;color:#eee8df}
.city-guide-copy .text-link{color:#fff}
.city-overview{padding-top:5.8rem;padding-bottom:5.8rem;gap:5.6rem}
.city-overview h2{max-width:550px}
.city-assurance-list{border-top:1px solid #d9d4ca}
.city-assurance-list>div{position:relative;padding:1.4rem 0 1.35rem 3.7rem;border-bottom:1px solid #d9d4ca}
.city-assurance-number{position:absolute;left:0;top:1.5rem;color:var(--gold);font:700 1.1rem Georgia,serif}
.city-assurance-list b{display:block;font-size:1rem}
.city-assurance-list p{margin:.28rem 0 0;color:#5f5a54;font-size:.92rem;line-height:1.5}
.city-service-rhythm{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:4rem;align-items:center;padding:5rem max(2rem,calc((100vw - 1180px)/2));background:#080808;color:#fff}
.city-service-rhythm h2{font-size:clamp(2.5rem,4.1vw,4rem);margin:.5rem 0 1rem}
.city-service-rhythm>div>p:not(.eyebrow){max-width:430px;margin:0;color:#d8d1c6;line-height:1.7}
.city-rhythm-cards{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #4b443a}
.city-rhythm-cards article{min-height:162px;padding:1.3rem 1.15rem;border-right:1px solid #4b443a;display:flex;flex-direction:column;justify-content:flex-end}
.city-rhythm-cards span{color:var(--gold);font-size:.82rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.city-rhythm-cards p{margin:.65rem 0 0;color:#e6e0d8;font-size:.9rem;line-height:1.48}
@media(max-width:820px){.city-guide-copy{padding:4rem 2rem}.city-service-rhythm{grid-template-columns:1fr;gap:2.5rem}.city-rhythm-cards{grid-template-columns:1fr 1fr}.city-rhythm-cards article:last-child{grid-column:1/-1;border-top:1px solid #4b443a}}
@media(max-width:560px){.city-guide-hero,.city-guide-copy{min-height:470px}.city-guide-copy{padding:3.5rem 1.25rem}.city-guide-copy h1{font-size:3rem}.city-overview{padding-top:3.6rem;padding-bottom:3.6rem}.city-service-rhythm{padding:3.6rem 1.25rem}.city-rhythm-cards{grid-template-columns:1fr}.city-rhythm-cards article,.city-rhythm-cards article:last-child{grid-column:auto;border-top:1px solid #4b443a}.city-rhythm-cards article:first-child{border-top:0}}
/* City guide photographic hero treatment */
.city-guide-hero{display:block;position:relative;isolation:isolate;min-height:510px;background:#080808 url('assets/city-hero-alvin-consultation-v2.webp') center top/cover no-repeat;border-bottom:3px solid var(--gold)}
.city-guide-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.87) 0%,rgba(0,0,0,.72) 49%,rgba(0,0,0,.48) 100%)}
.city-guide-hero::after{content:"";position:absolute;z-index:-1;right:4%;top:50%;width:290px;height:290px;transform:translateY(-50%);background:url('assets/keystone-crest-gold-transparent.webp') center/contain no-repeat;opacity:.12}
.city-guide-hero .city-guide-copy{position:relative;z-index:1;min-height:510px;display:flex;flex-direction:column;justify-content:center;padding:5.5rem max(2rem,calc((100vw - 1180px)/2));background:transparent;color:#fff}
.city-guide-hero .city-guide-copy>p:not(.eyebrow){color:#eee8df}
.city-guide-hero .city-guide-copy .text-link{color:#fff}
.city-guide-hero .city-guide-mark{display:none}
@media(max-width:820px){.city-guide-hero .city-guide-copy{padding:4rem 2rem}}
@media(max-width:560px){.city-guide-hero,.city-guide-hero .city-guide-copy{min-height:470px}.city-guide-hero .city-guide-copy{padding:3.5rem 1.25rem}}
/* Remove city guide hero crest */
.city-guide-hero::after{display:none}
/* Alvin proof hero breathing room */
.city-guide-hero{min-height:700px}
.city-guide-hero .city-guide-copy{min-height:700px;padding-top:7.75rem;padding-bottom:6.25rem}
@media(max-width:820px){.city-guide-hero,.city-guide-hero .city-guide-copy{min-height:570px}.city-guide-hero .city-guide-copy{padding-top:6.25rem;padding-bottom:5rem}}
@media(max-width:560px){.city-guide-hero,.city-guide-hero .city-guide-copy{min-height:500px}.city-guide-hero .city-guide-copy{padding-top:5rem;padding-bottom:4rem}}
/* Final Alvin consultation framing */
.city-guide-hero{min-height:650px!important;background-position:center -120px!important}
.city-guide-hero .city-guide-copy{min-height:650px!important}
@media(max-width:820px){.city-guide-hero,.city-guide-hero .city-guide-copy{min-height:570px!important}}
@media(max-width:560px){.city-guide-hero,.city-guide-hero .city-guide-copy{min-height:500px!important}}
/* Alvin proof copy placement */
.city-guide-hero .city-guide-copy{transform:translateY(-70px)}
@media(max-width:560px){.city-guide-hero .city-guide-copy{transform:translateY(-28px)}}
/* Alvin proof overview alignment */
.city-overview .city-assurance-list{margin-top:124px}
@media(max-width:820px){.city-overview .city-assurance-list{margin-top:0}}
/* Alvin proof request-section breathing room */
.trust-panel + .local-next{margin-top:58px;margin-bottom:66px}
@media(max-width:620px){.trust-panel + .local-next{margin-top:36px;margin-bottom:42px}}
/* Alvin proof popular-services spacing */
.city-overview{padding-bottom:4rem}
.city-overview + .city-popular{padding-top:28px!important}
@media(max-width:620px){.city-overview{padding-bottom:2.8rem}.city-overview + .city-popular{padding-top:20px!important}}
/* Homepage dual hero actions */
.home-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:560px){.home-hero-actions .button{width:100%}}

/* Homepage footer breathing room */
.home-footer .footer-cta{margin:35px auto!important}
@media(max-width:820px){.home-footer .footer-cta{margin:32px 18px!important}}


/* Global gold header and footer rules */
header{border-bottom:3px solid var(--gold)!important}
.footer-main{border-top:3px solid var(--gold)!important}


/* Site-wide footer callout breathing room */
.footer-cta{margin:35px auto!important}
@media(max-width:820px){.footer-cta{margin:32px 18px!important}}


/* Homepage full-width consultation hero */
.home-full-bleed{display:block!important;position:relative!important;isolation:isolate!important;margin-top:-30px!important;min-height:691px!important;background:#111 url('assets/homepage-hero-consultation-natural-v3.webp') center -30px/cover no-repeat!important}
.home-full-bleed::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.60) 42%,rgba(0,0,0,.22) 100%)}
.home-full-bleed .showcase-copy{position:relative;z-index:1;width:60%!important;max-width:none!important;min-height:691px!important;padding:90px 70px 90px max(34px,calc((100vw - 1360px)/2))!important;background:transparent!important;color:#fff!important}
.home-full-bleed .showcase-copy h1{color:#fff!important;max-width:660px!important;margin-bottom:30px!important;line-height:1.08!important}
.home-full-bleed .showcase-copy p:not(.eyebrow),.home-full-bleed .hero-service-area{color:#f2eee7!important}
.home-full-bleed .showcase-copy .eyebrow{color:#e2b45c!important}
.home-full-bleed>img{display:none!important}
@media(max-width:820px){.home-full-bleed,.home-full-bleed .showcase-copy{min-height:570px!important}.home-full-bleed .showcase-copy{width:100%!important;padding:72px 34px!important;background:linear-gradient(90deg,rgba(0,0,0,.70),rgba(0,0,0,.30))!important}}
@media(max-width:560px){.home-full-bleed,.home-full-bleed .showcase-copy{min-height:535px!important}.home-full-bleed .showcase-copy{padding:64px 22px!important}.home-full-bleed .showcase-copy h1{font-size:clamp(46px,13vw,62px)!important}}
.footer-guarantee{display:inline-flex;align-items:center;gap:8px}.footer-guarantee img{width:19px;height:19px;object-fit:contain}
.footer-social-links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.15rem}.footer-social-links a{border:1px solid rgba(232,189,102,.62);border-radius:999px;padding:.35rem .58rem;color:#f4dfae;font-size:.72rem;font-weight:700;text-decoration:none;line-height:1}.footer-social-links a:hover{background:#e8bd66;color:#14100b}

.confirmation-summary .confirmation-logo{width:calc(100% + 48px);max-width:none;height:108px;object-fit:contain;object-position:center;padding:20px 28px;margin:-19px -24px 26px;border-bottom:3px solid var(--gold);border-radius:0;background:#070707}
@media print{.confirmation-summary .confirmation-logo{width:calc(100% + 48px)!important;max-width:none!important;height:96px!important;margin:-19px -24px 24px!important;padding:14px 24px!important;border-bottom:2px solid #9d6f19!important;background:#070707!important;filter:none!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}

/* Careers: expanded recruiting story and expectations. */
.careers-top-action{margin:25px 0 8px;text-align:center}.careers-top-action .button{min-height:46px;padding:14px 23px}
.careers-story,.careers-growth{max-width:1120px;margin:72px auto 0;padding:58px;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;background:#080808;color:#fff}.careers-story h2,.careers-growth h2{margin:7px 0 0;color:#fff;font-size:clamp(34px,4vw,52px);line-height:1.08}.careers-story .eyebrow,.careers-growth .eyebrow{color:var(--gold)!important}.careers-story-copy,.careers-growth>div:last-child{display:grid;gap:17px}.careers-story-copy p,.careers-growth>div:last-child p{margin:0;color:#d5cec4;font-size:15px;line-height:1.72}.careers-expectations{max-width:1120px;margin:0 auto;padding:72px 0}.careers-expectations>h2{max-width:670px;margin:7px 0 31px;font-size:clamp(34px,4vw,50px);line-height:1.09}.careers-principles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d8d0c4;border-bottom:1px solid #d8d0c4}.careers-principles article{padding:27px 24px;border-left:1px solid #d8d0c4}.careers-principles article:first-child{border-left:0}.careers-principles span{color:#a96f06;font:700 16px Georgia,serif}.careers-principles h3{margin:14px 0 8px;font-size:21px}.careers-principles p{margin:0;color:#615a51;font-size:14px;line-height:1.58}.careers-growth{margin-top:0;background:#f1ede5;color:#211c15}.careers-growth h2{color:#211c15}.careers-growth>div:last-child p{color:#5b544b}.openings-intro{max-width:700px;margin:0 0 24px;color:#5b544b;line-height:1.65}@media(max-width:820px){.careers-story,.careers-growth{grid-template-columns:1fr;gap:28px;padding:45px 32px}.careers-principles{grid-template-columns:1fr 1fr}.careers-principles article:nth-child(3){border-left:0;border-top:1px solid #d8d0c4}.careers-principles article:nth-child(4){border-top:1px solid #d8d0c4}}@media(max-width:560px){.careers-story,.careers-growth{margin-top:52px;padding:38px 22px}.careers-expectations{padding:52px 0}.careers-principles{grid-template-columns:1fr}.careers-principles article,.careers-principles article:nth-child(3),.careers-principles article:nth-child(4){border-left:0;border-top:1px solid #d8d0c4}.careers-principles article:first-child{border-top:0}}
