:root{--ink:#20272a;--olive:#4e6033;--sage:#b9c69d;--paper:#fafaf7;--line:#e1e3da;--muted:#6c716b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 'Manrope',sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}button,a,input,select,textarea,summary{outline-offset:5px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:600;line-height:.99;letter-spacing:-1.2px}h2{font-size:clamp(42px,4.2vw,62px)}em{font-style:normal;color:var(--olive)}.wrap{width:calc(100% - 96px);max-width:1350px;margin-inline:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;line-height:1.6;color:var(--olive);margin-bottom:24px}.header{height:108px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:17px;font-size:13px;letter-spacing:2px;line-height:1.4;font-weight:600}.brand small{display:block;font-size:9px;letter-spacing:4.2px}.monogram{font-family:Arial,sans-serif;font-size:49px;letter-spacing:-8px;font-weight:300;border-right:1px solid #a8ada5;padding-right:22px;line-height:1.1}nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.nav-cta{padding:11px 18px;border:1px solid #c5cabd;border-radius:4px;display:flex;gap:35px}.menu{display:none}.hero{position:relative;min-height:650px;border-radius:12px;overflow:hidden;background:#e5e2d9}.hero-image{position:absolute;width:70%;height:100%;right:0;object-fit:cover;object-position:50% 50%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#f0f0e9 0%,#f0f0e9 27%,#f0f0e9e6 38%,#f0f0e965 55%,transparent 74%)}.hero-copy{position:relative;padding:63px 5% 95px;z-index:1}.hero h1{font-size:clamp(75px,8.3vw,126px);letter-spacing:-2px}.hero .eyebrow{font-size:9px;margin-bottom:25px}.hero-sub{font-size:21px;font-weight:600;line-height:1.4;margin-top:23px}.hero-text{color:#62675f;font-size:13px;line-height:1.9;margin-top:18px}.actions{display:flex;align-items:center;gap:26px;margin-top:28px}.button{border:none;background:var(--olive);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 23px;font-size:11px;font-weight:700;border-radius:4px;transition:background .2s,transform .2s}.button:hover{background:#354723;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.text-link{font-size:11px;font-weight:700;display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid #a4aa98;padding-block:8px}.hero-caption{position:absolute;bottom:23px;left:5%;right:3%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#434a3b}.hero-caption span:last-child{background:#fafaf0df;padding:6px 9px;border-radius:2px}.scroll-cue{position:absolute;right:26px;bottom:65px;width:36px;height:36px;background:#fafaf0df;display:grid;place-items:center;border-radius:50%;font-size:18px}.promise{display:grid;grid-template-columns:repeat(4,1fr);padding:35px 0;border-bottom:1px solid var(--line);gap:25px}.promise>div{display:flex;align-items:center;gap:15px;justify-content:center;border-right:1px solid var(--line)}.promise>div:last-child{border:0}.promise span{font-size:9px;letter-spacing:.8px;font-weight:700;line-height:2}.promise b{font-size:11px;letter-spacing:0;font-weight:400;color:var(--muted)}i{display:inline-flex;color:var(--olive)}i svg{width:31px;height:31px;stroke:currentColor;stroke-width:1.2;fill:none;stroke-linecap:round;stroke-linejoin:round}.section{padding-block:92px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.section-head>p{color:var(--muted);max-width:350px;margin-bottom:4px;font-size:13px}.project-grid{display:grid;grid-template-columns:1.22fr 1fr;gap:28px}.project{padding:0;border:0;background:transparent;text-align:left}.project-image{height:390px;position:relative;border-radius:8px;overflow:hidden}.project-image>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project:hover img{transform:scale(1.025)}.image-tag{position:absolute;top:18px;left:18px;border-radius:3px;padding:4px 10px;background:#f8f8efed;font-size:8px;font-weight:700;letter-spacing:1.2px}.round-arrow{position:absolute;bottom:18px;right:18px;background:white;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:22px}.project-caption{padding:17px 0;display:flex;justify-content:space-between;gap:12px;align-items:center}.project-caption h3{font-size:14px;font-weight:600}.project-caption>span{font-size:8px;letter-spacing:1px;color:var(--muted)}.work-note{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:10px}.work-note a{color:var(--olive);font-weight:700}.services{background:#eef0e8}.service-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.service-intro>p:not(.eyebrow){color:var(--muted);margin:24px 0 16px;font-size:13px}.service-intro>img{margin-top:28px;height:150px;width:245px;object-fit:cover;border-radius:6px;object-position:center 60%}.service-list{border-top:1px solid #cbd0c1}.service-list details{border-bottom:1px solid #cbd0c1}.service-list summary{list-style:none;display:flex;align-items:center;gap:22px;padding:24px 0;cursor:pointer;font-size:15px;font-weight:600}.service-list summary::-webkit-details-marker{display:none}.service-list summary:after{content:'+';margin-left:auto;font-size:24px;font-weight:400;color:var(--olive)}.service-list details[open] summary:after{content:'−'}.service-list details p{padding:0 45px 25px 53px;font-size:12px;color:#62695a;line-height:1.9}.service-list details a{display:inline-block;margin-top:10px;color:var(--olive);font-weight:700}.approach{display:grid;grid-template-columns:1.05fr 1fr;gap:24px}.confidence,.process{border-radius:10px;overflow:hidden;position:relative;min-height:650px;color:white}.confidence{background:#29332a}.confidence>img{width:100%;height:100%;position:absolute;object-fit:cover;opacity:.28}.confidence:after{content:'';position:absolute;inset:0;background:linear-gradient(#29332aa6,#29332a22 65%,#16241be6)}.confidence-copy{position:relative;z-index:1;padding:48px}.confidence .eyebrow,.process .eyebrow{color:var(--sage);font-size:9px}.confidence h2,.process h2{font-size:46px;line-height:1.05}.confidence em,.process em{color:#c7d0b5}.confidence-copy>p:not(.eyebrow){font-size:12px;color:#d0d4ca;margin:22px 0}.confidence ul{padding:0;list-style:none;font-size:12px;line-height:2.8}.confidence li:before{content:'✓';border:1px solid #c2cba9;border-radius:50%;width:15px;height:15px;display:inline-grid;place-items:center;font-size:10px;line-height:1;margin-right:12px;color:#c2cba9}.signature{display:block;font-size:9px;letter-spacing:2px;margin-top:62px;color:#cbd4bb}.process{background:linear-gradient(130deg,#283b48,#101e28);padding:48px}.steps{margin-top:30px}.steps article{display:flex;gap:22px;padding-bottom:25px;position:relative}.steps article>span{font-family:'Barlow Condensed',sans-serif;font-size:23px;color:#b9c99e}.steps i{color:#c0cab6;padding-top:5px}.steps h3{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:500;letter-spacing:.5px}.steps p{color:#c0c9cc;font-size:11px;line-height:1.9;margin-top:4px}.contact{background:var(--olive);border-radius:10px;color:white;padding:58px 64px;display:grid;grid-template-columns:1fr 1fr;gap:40px;overflow:hidden}.contact .eyebrow{color:#d4dfbc;font-size:9px}.contact h2{font-size:68px}.contact h2 em{color:#d1dabf}.contact p{font-size:12px;color:#e1e6d8;margin:20px 0}.light{background:#fafbf5;color:#28331e}.light:hover{background:#e6ecd9}.contact-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}.big-mark{font:210px/.8 Arial,sans-serif;letter-spacing:-35px;color:#d6dfc322;margin-right:30px}.contact-right>div{text-align:right}.contact-right span:not(.big-mark){font-size:8px;letter-spacing:1.5px;color:#d5ddc4;display:block}.contact-right a{display:block;font-size:26px;margin-top:10px}.contact-right p{font-size:10px;margin:4px 0}.closing{display:grid;grid-template-columns:repeat(3,1fr);padding:46px 0 68px;gap:30px}.closing>div{text-align:center;border-right:1px solid var(--line)}.closing>div:last-child{border:0}.closing h3{font-size:10px;letter-spacing:1px;margin-top:8px}.closing p{font-size:10px;color:var(--muted);margin-top:4px}footer{background:#20272b;color:#edf0e8;padding:55px 0 23px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-top>div>a:not(.brand){display:block;font-size:11px;color:#c7ccc6;margin-top:10px}.footer-top p{color:#a9b1ad;font-size:11px;margin-top:20px}.footer-top .eyebrow{color:#a6b38d;font-size:9px}.footer-bottom{display:flex;justify-content:space-between;font-size:8px;color:#aab0a8;border-top:1px solid #ffffff1c;margin-top:48px;padding-top:20px}.footer-bottom>span:nth-child(2){letter-spacing:1.5px}dialog{border:none;padding:0;border-radius:12px;max-width:760px;width:calc(100% - 32px);max-height:90vh;overflow:auto;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#101a1bd9;backdrop-filter:blur(6px)}dialog>img{width:100%;height:340px;object-fit:cover}.close{position:absolute;right:14px;top:14px;border:0;background:#fff;border-radius:50%;width:35px;height:35px;font-size:25px;z-index:2}.dialog-copy{padding:35px}.dialog-copy h2{font-size:48px}.dialog-copy>p:not(.eyebrow){margin:20px 0;color:var(--muted)}.dialog-copy .button{margin-top:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}label{font-size:11px;font-weight:600}input,select,textarea{width:100%;padding:12px;margin-top:6px;border:1px solid #ccd1c5;border-radius:4px;background:white;min-width:0;font-size:12px}textarea{min-height:85px;resize:vertical}.wide{grid-column:1/-1}.form-note{font-size:10px;color:var(--muted);margin-top:15px}#form-status{font-size:12px;color:var(--olive);margin-top:12px}.skip{position:fixed;top:-60px;left:10px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}@media(min-width:1600px){.hero-copy{padding-top:85px}.hero{min-height:740px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.hero-copy{padding-left:5%}.hero h1{font-size:90px}.hero{min-height:650px}.promise{gap:12px}.promise>div{gap:8px}.promise b{font-size:9px}.project-image{height:310px}.project-caption{display:block}.confidence-copy,.process{padding:34px}.confidence h2,.process h2{font-size:39px}.confidence li{font-size:11px}.service-layout{gap:6%}.contact{padding:45px}.contact h2{font-size:58px}.steps article{gap:14px}}@media(max-width:700px){.wrap{width:calc(100% - 32px)}.header{height:88px}.brand{font-size:11px;gap:13px}.brand small{font-size:8px}.monogram{font-size:42px;padding-right:19px}.menu{display:block;border:0;background:none;padding:10px}.menu span{display:block;width:22px;height:1.5px;margin:5px 0;background:var(--ink)}nav{display:none;position:absolute;left:16px;right:16px;top:79px;background:var(--paper);z-index:10;padding:25px;box-shadow:0 12px 20px #101a1b20;border-radius:8px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:22px}.hero{min-height:675px}.hero-image{width:100%;object-position:60% center}.hero-shade{background:linear-gradient(90deg,#f0f0e9f2,#f0f0e9d9 35%,#f0f0e940),linear-gradient(0deg,#f0f0e9 0%,transparent 25%)}.hero-copy{padding:37px 23px 80px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px;max-width:240px}.hero h1{font-size:81px}.hero-sub{font-size:20px}.hero-text{font-size:12px;max-width:260px}.desktop{display:none}.actions{align-items:flex-start;gap:15px;flex-direction:column}.hero-caption{left:23px;bottom:25px;font-size:7px;right:23px}.hero-caption>span:first-child{max-width:120px}.scroll-cue{bottom:65px;right:23px}.promise{grid-template-columns:1fr 1fr;padding:24px 16px;gap:22px;background:white;position:relative;border:1px solid var(--line);border-radius:10px;width:calc(100% - 56px);margin-top:-5px;box-shadow:0 8px 25px #20272b05}.promise>div{justify-content:flex-start;gap:12px}.promise>div:nth-child(2){border:0}.promise span{font-size:8px;letter-spacing:.3px}.promise b{font-size:9px}.promise i svg{width:25px;height:25px}.section{padding-block:58px}.section-head{display:block;margin-bottom:25px}.section-head>p{margin-top:20px;font-size:12px}.eyebrow{margin-bottom:16px;font-size:9px}h2{font-size:45px}.project-grid{grid-template-columns:1fr;gap:24px}.project-image{height:300px}.project-caption{display:flex}.project-caption h3{font-size:12px}.project-caption>span{font-size:7px}.work-note{font-size:9px;gap:20px}.work-note>span{max-width:180px}.service-layout{grid-template-columns:1fr;gap:28px}.service-intro>img{display:none}.service-intro>p:not(.eyebrow){font-size:12px}.service-list summary{font-size:13px;gap:15px;padding:20px 0}.service-list details p{padding-left:45px;padding-right:10px}.approach{grid-template-columns:1fr;gap:16px}.confidence,.process{min-height:0}.confidence-copy,.process{padding:32px 27px}.confidence h2,.process h2{font-size:40px}.confidence li{font-size:11px}.signature{margin-top:40px}.steps article{padding-bottom:26px;gap:22px}.steps article:last-child{padding-bottom:0}.contact{grid-template-columns:1fr;padding:36px 27px;gap:35px}.contact h2{font-size:49px}.contact-right{align-items:flex-start}.contact-right>div{text-align:left}.big-mark{display:none}.contact-right a{font-size:23px}.closing{grid-template-columns:1fr;gap:0;padding:20px 15px 45px}.closing>div{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:35px 1fr;column-gap:15px;text-align:left;padding:18px 0}.closing i{grid-row:1/3;align-items:center}.closing h3{margin:0}.closing p{margin:3px 0 0}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{gap:20px;flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}.form-grid{grid-template-columns:1fr}.dialog-copy{padding:28px 22px}dialog>img{height:250px}.dialog-copy h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.service-list summary svg{width:31px;height:31px;flex-shrink:0;stroke:var(--olive);stroke-width:1.2;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Fixed canvas includes the entire approach and antlers at every pose. */
.header .brand{gap:17px}.buck-logo{display:block;width:89px;height:80px;padding-right:12px;border-right:1px solid #a8ada5;flex-shrink:0}.buck-logo svg{display:block;width:100%;height:100%;overflow:hidden}
@media(max-width:700px){.buck-logo{width:74px;height:68px;padding-right:10px}.header .brand{gap:12px}}
@media(prefers-reduced-motion:reduce){.buck-logo .rig-scene{display:none}.buck-logo .rig-static{opacity:1!important}}

/* Sunset confidence card, adapted from the supplied visual reference. */
.confidence{min-height:650px;border-radius:22px;background:#353c47;isolation:isolate}
.confidence>img{opacity:1;object-fit:cover;object-position:center;width:100%;height:100%}
.confidence:after{background:linear-gradient(105deg,rgba(16,25,32,.2),transparent 80%);pointer-events:none}
.confidence-copy{padding:52px 44px 230px}
.confidence .eyebrow{font-size:11px;letter-spacing:.6px;color:#c3d0a8;margin-bottom:24px}
.confidence h2{font-size:clamp(32px,3.15vw,44px);line-height:1.22;letter-spacing:-.5px;color:#fffdf7}
.confidence ul{display:grid;gap:18px;margin:30px 0 0;font-size:13px;line-height:1.55;color:#f8f5ef}
.confidence li{display:flex;align-items:flex-start;gap:14px}
.confidence li:before{content:'✓';box-sizing:border-box;flex:0 0 21px;width:21px;height:21px;margin:0;border:1.7px solid #c3d0a8;color:#c3d0a8;font-size:14px;font-weight:600;line-height:1;display:grid;place-items:center;border-radius:50%;transform:translateY(1px)}
@media(max-width:1050px) and (min-width:701px){.confidence-copy{padding:40px 28px 220px}.confidence h2{font-size:34px}.confidence ul{font-size:12px;gap:17px}}
@media(max-width:700px){.confidence{min-height:590px;border-radius:19px}.confidence-copy{padding:35px 27px 225px}.confidence .eyebrow{font-size:10px;margin-bottom:22px}.confidence h2{font-size:32px;line-height:1.25}.confidence ul{font-size:12px;gap:18px;margin-top:27px}.confidence li{font-size:12px;gap:12px}.confidence li:before{flex-basis:19px;width:19px;height:19px;font-size:12px}}
@media(max-width:700px){.confidence>img{object-position:right center}}
/* Shared page navigation */
nav a[aria-current="page"]{color:var(--olive);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}
@media(min-width:701px) and (max-width:1100px){nav{gap:18px;font-size:11px}.nav-cta{gap:16px}}

/* Rounded header contact button */
.nav-cta{border-radius:999px}.nav-chevron{font-size:22px;font-weight:400;line-height:1}

/* Consistent action-button shape and iconography */
.button{border-radius:999px}.button .action-chevron,.text-link .action-chevron{font-size:22px;line-height:1;font-weight:400}

/* Brand story hero */
.hero h1.vision-title{font-size:clamp(62px,6.5vw,96px);line-height:1.02;letter-spacing:-1.5px}.hero-text.vision-copy{max-width:375px}.hero .vision-title+.hero-sub{margin-top:20px}
@media(max-width:1050px){.hero h1.vision-title{font-size:70px}.hero-text.vision-copy{max-width:340px}}
@media(max-width:700px){.hero h1.vision-title{font-size:clamp(41px,10.8vw,70px);letter-spacing:-.8px}.hero-text.vision-copy{max-width:290px}.hero .vision-title+.hero-sub{font-size:19px}.hero:has(.vision-title){min-height:690px}}
/* Shared values card beneath the hero */
.promise{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px #20272a06;margin-top:24px;padding:30px 22px}
@media(max-width:700px){.promise{width:calc(100% - 32px);margin-top:16px;padding:24px 18px;border-radius:14px}}

/* Eight Point Guarantee — original commitments from the live site */
.guarantee{margin-bottom:80px;padding:48px;background:#eef0e8;border:1px solid #e0e5d7;border-radius:16px}.guarantee-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:35px}.guarantee-heading h2{line-height:1.04}.guarantee-heading>p{font-size:13px;color:var(--muted);max-width:430px;line-height:1.9;padding-bottom:4px}.guarantee-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.guarantee-grid li{background:var(--paper);border:1px solid #e1e5d9;border-radius:10px;padding:24px 21px}.guarantee-number{display:block;font-family:'Barlow Condensed',sans-serif;font-size:29px;line-height:1;color:#85956c;margin-bottom:23px}.guarantee-grid h3{font-size:14px;font-weight:700;line-height:1.4;margin-bottom:12px}.guarantee-grid p{font-size:11px;color:var(--muted);line-height:1.9}.guarantee-note{border-top:1px solid #d8dece;margin-top:28px;padding-top:22px;font-size:11px;color:var(--muted);line-height:1.9}.guarantee-note strong{color:var(--olive);font-weight:600}
@media(max-width:1050px){.guarantee{padding:34px}.guarantee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guarantee-heading{gap:30px}.guarantee-heading h2{font-size:45px}}
@media(max-width:700px){.guarantee{padding:30px 22px;margin-bottom:50px}.guarantee-heading{grid-template-columns:1fr;gap:22px;margin-bottom:25px}.guarantee-heading h2{font-size:42px}.guarantee-heading>p{font-size:12px}.guarantee-grid{grid-template-columns:1fr;gap:12px}.guarantee-grid li{padding:23px;position:relative;padding-left:67px}.guarantee-number{position:absolute;left:23px;top:24px;font-size:26px}.guarantee-grid h3{font-size:14px}.guarantee-grid p{font-size:12px}.guarantee-note{font-size:11px}}

/* Keep the hero focused; crop the photograph above its embedded credit strip. */
.hero .hero-image{top:0;height:119%;object-position:center top}

.service-list summary .original-service-icon{width:48px;height:48px;flex:0 0 48px;object-fit:contain}.service-list summary>svg{width:48px;height:48px;flex:0 0 48px}.service-list details p{padding-left:70px}@media(max-width:700px){.service-list summary .original-service-icon,.service-list summary>svg{width:42px;height:42px;flex-basis:42px}.service-list details p{padding-left:57px}}

.service-icon-frame{width:48px;height:48px;flex:0 0 48px;overflow:hidden;display:grid;place-items:center}.service-icon-frame .original-service-icon{transform:scale(1.7)}.service-list summary>svg{padding:8px}@media(max-width:700px){.service-icon-frame{width:42px;height:42px;flex-basis:42px}}

/* Contained services card, aligned with the homepage content. */
.services.section{border:1px solid #dfe4d6;border-radius:16px;padding:52px 48px;box-shadow:0 8px 28px #20272a04}.services .service-layout{gap:7%}
@media(max-width:1050px){.services.section{padding:38px 32px}}
@media(max-width:700px){.services.section{padding:32px 23px;border-radius:14px}.services .service-layout{gap:28px}}

/* Original partner logos and destinations from the live homepage. */
.partners{margin-bottom:80px;padding:45px 48px 48px;background:#fff;border:1px solid var(--line);border-radius:16px}.partners-heading{margin-bottom:32px}.partners-heading .eyebrow{margin-bottom:15px}.partner-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.partner-grid li>a,.partner-grid li>div{display:flex;flex-direction:column;height:100%;padding:25px 25px 17px;border:1px solid var(--line);border-radius:10px;background:#fff}.partner-grid li>a{transition:border-color .2s,box-shadow .2s}.partner-grid li>a:hover{border-color:#8e9f75;box-shadow:0 6px 20px #20272a08}.partner-logo{height:95px;display:flex;align-items:center;justify-content:center}.partner-logo img{max-width:100%;max-height:86px;object-fit:contain}.partner-name{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);border-top:1px solid #eef0e8;margin-top:22px;padding-top:12px}.partner-name>span{font-size:20px;line-height:1;color:var(--olive)}
@media(max-width:1050px){.partners{padding:35px 32px}.partner-grid{gap:14px}.partner-grid li>a,.partner-grid li>div{padding:20px 18px 15px}}
@media(max-width:700px){.partners{padding:30px 23px;margin-bottom:50px}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.partner-grid li>a,.partner-grid li>div{padding:16px 12px 13px}.partner-logo{height:70px}.partner-logo img{max-height:65px}.partner-name{font-size:9px;margin-top:15px;gap:6px}.partners-heading h2{font-size:42px}}

/* Logo-only partner cards with gentle interactive feedback. */
.partner-grid li>a,.partner-grid li>div{padding:28px 25px;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.partner-logo{height:100px}.partner-logo img{transition:transform .22s ease}.partner-grid li:hover>a,.partner-grid li:hover>div,.partner-grid li>a:focus-visible{transform:translateY(-4px);border-color:#8e9f75;box-shadow:0 10px 24px #20272a0d}.partner-grid li:hover .partner-logo img,.partner-grid li>a:focus-visible img{transform:scale(1.04)}.partner-grid li>a:active{transform:translateY(-1px)}
@media(max-width:700px){.partner-grid li>a,.partner-grid li>div{padding:22px 12px}.partner-logo{height:75px}}
@media(prefers-reduced-motion:reduce){.partner-grid li:hover>a,.partner-grid li:hover>div,.partner-grid li>a:focus-visible,.partner-grid li:hover .partner-logo img,.partner-grid li>a:focus-visible img{transform:none}}

.contact-buck{display:block;width:200px;height:200px;margin-right:20px;line-height:0}.contact-buck svg{width:100%;height:100%;filter:invert(1);opacity:.18}@media(max-width:700px){.contact-buck{display:none}}

.guarantee-antlers{width:96px;height:96px;object-fit:contain;margin:-15px 0 12px;mix-blend-mode:multiply}@media(max-width:700px){.guarantee-antlers{width:80px;height:80px;margin:-10px 0 10px}}

/* Full-width service accordions with individual reference-image panels. */
.services .service-layout{display:block}.services .service-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px}.services .service-intro>p{margin:0 0 4px;font-size:12px}.services .service-intro .eyebrow{margin-bottom:16px}.service-list summary{padding:20px 0}.service-expanded{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:5px 0 32px;align-items:center}.service-reference{margin:0;border-radius:10px;overflow:hidden;position:relative;aspect-ratio:4/3;background:#e1e6d8}.service-reference>img{width:100%;height:100%;object-fit:cover}.service-reference figcaption{position:absolute;inset:auto 0 0;padding:30px 20px 15px;background:linear-gradient(transparent,#1e2825b3);font-size:8px;letter-spacing:1.2px;color:white;text-transform:uppercase}.service-list .service-description>p{padding:0;margin:18px 0 24px;font-size:13px;line-height:1.9}.service-list .service-description>.eyebrow{margin:0 0 13px;font-size:8px;color:var(--olive)}.service-description h3{font:500 35px/1.15 'Barlow Condensed',sans-serif}.service-list .service-description>a{display:inline-flex;margin:0;color:white;font-weight:700}.service-photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed #b3bea4;border-radius:10px;color:#5c6a4e}.service-photo-placeholder>svg{width:45px;height:45px;fill:none;stroke:currentColor;stroke-width:1.2}.service-photo-placeholder>span:not(.service-icon-frame){font:500 26px 'Barlow Condensed',sans-serif}.service-photo-placeholder small{font-size:10px;color:var(--muted)}
@media(max-width:1050px){.service-expanded{gap:28px}.service-description h3{font-size:30px}.service-list .service-description>p{font-size:12px}.service-description .button{gap:20px}}
@media(max-width:700px){.services .service-intro{display:block;margin-bottom:25px}.services .service-intro>p{margin-top:20px}.service-expanded{grid-template-columns:1fr;gap:24px;padding-bottom:28px}.service-reference{aspect-ratio:4/3}.service-description h3{font-size:30px}.service-list .service-description>p{padding:0}.service-list .service-description .eyebrow{margin-bottom:10px}.service-list summary{font-size:13px}}

.hero + .services.section{margin-top:72px}@media(max-width:700px){.hero + .services.section{margin-top:42px}}

.footer-affiliation{margin-top:28px;padding-top:18px;border-top:1px solid #ffffff1c}.footer-affiliation>a{display:inline-flex;align-items:center;gap:24px;border-radius:6px}.footer-affiliation img{width:130px;height:85px;object-fit:contain}.footer-affiliation>a>span{font-size:11px;color:#c7ccc6}.footer-affiliation small{display:block;font-size:9px;color:#a6b38d;margin-top:5px}.footer-affiliation small span{font-size:17px;margin-left:8px}.footer-affiliation a:hover small{text-decoration:underline;text-underline-offset:4px}.footer-affiliation+.footer-bottom{margin-top:20px}@media(max-width:700px){.footer-affiliation>a{gap:16px}.footer-affiliation img{width:110px;height:80px}.footer-affiliation>a>span{font-size:10px}}

.footer-affiliation{display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-affiliation .footer-rating img{width:118px;height:auto;object-fit:contain;border-radius:7px}@media(max-width:700px){.footer-affiliation{flex-wrap:wrap;gap:12px}.footer-affiliation .footer-rating img{width:100px}.footer-rating{padding-bottom:8px}}

/* Original buck mark in the dark public-page footer. */
footer .buck-logo svg{filter:invert(1)}
footer .buck-logo{border-right-color:#ffffff40}

/* Carry the Why Choose Us landscape into the guarantee card. */
.guarantee{background:linear-gradient(180deg,#20272a55,#101a2080),url('assets/confidence-sunset.svg') center center/cover no-repeat;border-color:#42494b;color:#fffdf7}
.guarantee .eyebrow,.guarantee-heading h2 em{color:#c3d0a8}
.guarantee-heading>p,.guarantee-note{color:#efeee8}
.guarantee-antlers{filter:invert(1);mix-blend-mode:screen}
.guarantee-grid li{background:#17232b85;border-color:#ffffff2b;backdrop-filter:blur(2px)}
.guarantee-grid h3{color:#fffdf7}
.guarantee-grid p{color:#e2e5df}
.guarantee-number,.guarantee-note strong{color:#c3d0a8}
.guarantee-note{border-top-color:#ffffff30}

/* A shorter homepage invitation with a clean transition to the footer. */
.contact-compact{padding:34px 48px;gap:28px;margin-bottom:48px;align-items:center}
.contact-compact .eyebrow{margin-bottom:14px}
.contact-compact h2{font-size:52px}
.contact-compact>div>p:not(.eyebrow){margin-block:14px}
.contact-compact .contact-buck{width:130px;height:130px;margin-right:12px}
.contact-compact .contact-right{gap:12px}
@media(max-width:700px){.contact-compact{padding:28px 25px;gap:24px;margin-bottom:32px}.contact-compact h2{font-size:43px}}

/* Clip the rating artwork itself to consistent rounded corners. */
.footer-affiliation .footer-rating{border-radius:12px;overflow:hidden;flex-shrink:0;line-height:0;padding:0}
.footer-affiliation .footer-rating img{display:block;border-radius:12px;clip-path:inset(0 round 12px)}

/* Keep the two header actions together. */
@media(min-width:701px){.header nav .nav-cta + .nav-cta{margin-left:-23px}}
@media(min-width:701px) and (max-width:1100px){.header nav .nav-cta + .nav-cta{margin-left:-6px}}

.header .nav-talk{background:var(--olive);border-color:var(--olive);color:#fff}
.header .nav-talk:hover{background:#354723;border-color:#354723;color:#fff}

/* Soft green guarantee with restrained card interaction. */
.guarantee{background:#e9eee1;border-color:#dce3d2;color:var(--ink)}
.guarantee .eyebrow,.guarantee-heading h2 em{color:var(--olive)}
.guarantee-heading>p,.guarantee-note{color:#626b59}
.guarantee-antlers{filter:none;mix-blend-mode:multiply}
.guarantee-grid li{background:#fafcf6;border-color:#dce3d2;backdrop-filter:none;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.guarantee-grid h3{color:var(--ink)}
.guarantee-grid p{color:#626b59}
.guarantee-number{color:#7b8d62}
.guarantee-note strong{color:var(--olive)}
.guarantee-note{border-top-color:#d1dac5}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.guarantee-grid li:hover{transform:translateY(-5px);box-shadow:0 12px 26px #35472314;border-color:#aebd97}}


/* Service mark aligned with the section title. */
.services .service-intro{position:relative}
.services .service-intro>div{padding-right:70px}
.services-heading-icon{position:absolute;right:0;bottom:2px;display:block;width:55px;height:55px;color:var(--olive)}
@media(max-width:700px){.services-heading-icon{width:46px;height:46px;bottom:0}.services .service-intro>div{padding-right:58px}}

.services-heading-icon{object-fit:contain}
.services .service-intro>img.services-heading-icon{width:55px;height:55px;margin:0;object-fit:contain;object-position:center;border-radius:0}
@media(max-width:700px){.services .service-intro>img.services-heading-icon{display:block;width:46px;height:46px}}

/* Slightly larger service mark with restrained hover motion. */
.services .service-intro>img.services-heading-icon{width:63.25px;height:63.25px}
.services .service-intro>div{padding-right:78px}
@media(max-width:700px){.services .service-intro>img.services-heading-icon{width:52.9px;height:52.9px}.services .service-intro>div{padding-right:66px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .services-heading-icon{transition:transform .3s ease;transform-origin:center}
  .services-heading-icon:hover{transform:translateY(-3px) scale(1.05)}
}

/* Center the mark on the title line, excluding the eyebrow. */
.services .service-intro>div{width:100%;padding-right:0}
.services .service-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.services .service-title-row .services-heading-icon{position:static;width:63.25px;height:63.25px;margin:0;flex-shrink:0;object-fit:contain}
@media(max-width:700px){.services .service-title-row .services-heading-icon{display:block;width:52.9px;height:52.9px}}
/* Match the original service artwork to the site's olive icon palette. */
.services .service-title-row .services-heading-icon{filter:brightness(0) saturate(100%) invert(33%) sepia(19%) saturate(950%) hue-rotate(42deg) brightness(96%) contrast(87%)}

/* One full-width landscape card for the four-step process. */
.approach-wide{display:block}
.process-landscape{min-height:460px;border-radius:16px}
.process-landscape:after{background:linear-gradient(180deg,#111e2b99,#111e2b55 65%,#111e2b22)}
.process-landscape .confidence-copy{padding:48px 48px 100px}
.process-landscape h2{font-size:clamp(40px,4.2vw,58px);line-height:1.05}
.process-landscape h2 em{color:#c7d0b5}
.process-landscape .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:38px}
.process-landscape .steps article{display:grid;grid-template-columns:auto 1fr;gap:12px 16px;padding:20px 0 0;border-top:1px solid #ffffff45}
.process-landscape .steps article>div{grid-column:1/-1}
.process-landscape .steps p{color:#eef0eb}
@media(max-width:1050px){.process-landscape .steps{grid-template-columns:repeat(2,minmax(0,1fr))}.process-landscape .confidence-copy{padding:38px 32px 90px}}
@media(max-width:700px){.process-landscape .confidence-copy{padding:32px 27px 110px}.process-landscape .steps{grid-template-columns:1fr;gap:24px}.process-landscape .steps article{grid-template-columns:28px 32px 1fr;gap:14px}.process-landscape .steps article>div{grid-column:auto}.process-landscape h2{font-size:40px}}
.process-landscape>img{object-position:center bottom}

/* Directional connectors replace the individual process icons. */
.process-landscape .steps article{grid-template-columns:1fr}
.process-landscape .steps article:not(:last-child)::after{content:"";position:absolute;right:-19px;top:34px;width:12px;height:12px;border-top:1.5px solid #c7d0b5;border-right:1.5px solid #c7d0b5;transform:rotate(45deg)}
@media(min-width:701px) and (max-width:1050px){.process-landscape .steps{grid-template-columns:1fr}.process-landscape .steps article:not(:last-child)::after{right:12px;top:auto;bottom:-20px;transform:rotate(135deg)}}
@media(max-width:700px){.process-landscape .steps article{grid-template-columns:28px 1fr}.process-landscape .steps article:not(:last-child)::after{right:12px;top:auto;bottom:-18px;transform:rotate(135deg)}}
/* Bolder progress arrows and gentle movement within the process card. */
.process-landscape .steps article:not(:last-child)::after{border-width:3px}
.process-landscape h2{width:fit-content}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .process-landscape h2,.process-landscape .steps article>span,.process-landscape .steps article>div{transition:transform .3s ease}
  .process-landscape h2:hover{transform:translateY(-3px)}
  .process-landscape .steps article:hover>span,.process-landscape .steps article:hover>div{transform:translateY(-4px)}
}
/* Center shafted arrows in the gaps between process descriptions. */
@media(min-width:1051px){
  .process-landscape .steps{column-gap:48px}
  .process-landscape .steps article:not(:last-child)::before{content:"";position:absolute;width:24px;height:3px;background:#c7d0b5;right:-36px;top:90px;border-radius:2px}
  .process-landscape .steps article:not(:last-child)::after{right:-35px;top:85px;width:12px;height:12px}
}
@media(max-width:1050px){
  .process-landscape .steps{row-gap:40px}
  .process-landscape .steps article:not(:last-child)::before{content:"";position:absolute;width:3px;height:18px;background:#c7d0b5;left:50%;bottom:-30px;transform:translateX(-50%);border-radius:2px}
  .process-landscape .steps article:not(:last-child)::after{left:calc(50% - 6px);right:auto;top:auto;bottom:-30px;width:12px;height:12px}
}
/* Keep each progress arrow directly after its own step heading. */
.process-landscape .steps article::before,.process-landscape .steps article::after{display:none}
.process-landscape .steps h3{display:flex;align-items:center;gap:12px}
.process-landscape .steps article:not(:last-child) h3::after{content:"→";display:inline-block;flex-shrink:0;color:#c7d0b5;font:600 30px/1 Arial,sans-serif}
@media(max-width:1050px){.process-landscape .steps article:not(:last-child) h3::after{content:"↓";font-size:26px}}
.process-landscape .steps article:last-child h3::after{content:"✓";display:inline-block;flex-shrink:0;color:#c7d0b5;font:600 26px/1 Arial,sans-serif}
/* Give the hero story more horizontal breathing room. */
.hero-text.vision-copy{max-width:540px}
@media(min-width:701px) and (max-width:1050px){.hero-text.vision-copy{max-width:480px}}
@media(max-width:700px){.hero-text.vision-copy{max-width:100%}}
@media(min-width:701px){.hero-shade{background:linear-gradient(90deg,#f0f0e9 0%,#f0f0e9 30%,#f0f0e9ed 45%,#f0f0e9bf 56%,#f0f0e940 72%,transparent 85%)}}

/* Paired vertical process and compact guarantee cards. */
.process-guarantee{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.approach-stacked{display:block;min-width:0}
.approach-stacked .process-landscape{height:100%;min-height:0}
.approach-stacked .confidence-copy{padding:40px 36px 70px}
.approach-stacked .steps{grid-template-columns:1fr;gap:25px;margin-top:32px}
.approach-stacked .steps article{grid-template-columns:28px 1fr;gap:16px;padding-top:20px}
.approach-stacked .steps article>div{grid-column:2}
.approach-stacked .steps article>span{grid-column:1;grid-row:1}
.approach-stacked .steps article:not(:last-child) h3::after{content:"↓";font-size:26px}
.approach-stacked h2{font-size:46px}
.guarantee-compact{width:100%;margin:0;padding:36px;background:linear-gradient(130deg,#283b48,#101e28);border-color:#314653;color:white;min-width:0}
.guarantee-compact .guarantee-heading{display:block;margin-bottom:22px;position:relative}
.guarantee-compact .guarantee-heading h2{font-size:42px}
.guarantee-compact .guarantee-heading>p{font-size:11px;line-height:1.7;margin-top:16px;color:#c0c9cc}
.guarantee-compact .eyebrow,.guarantee-compact h2 em{color:#c7d0b5}
.guarantee-compact .guarantee-antlers{position:absolute;right:0;top:0;width:62px;height:62px;margin:0;filter:invert(1);mix-blend-mode:screen}
.guarantee-compact .guarantee-heading>div{padding-right:60px}
.guarantee-compact .guarantee-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
.guarantee-compact .guarantee-grid li{padding:14px 0;background:transparent;border:0;border-top:1px solid #ffffff26;border-radius:0;box-shadow:none}
.guarantee-compact .guarantee-number{position:static;font-size:20px;margin-bottom:8px;color:#b9c69d}
.guarantee-compact .guarantee-grid h3{font-size:12px;color:#fff;margin-bottom:6px}
.guarantee-compact .guarantee-grid p{font-size:11px;color:#c0c9cc;line-height:1.7}
@media(max-width:850px){.process-guarantee{grid-template-columns:1fr}.guarantee-compact{padding:32px 27px}.approach-stacked .confidence-copy{padding:32px 27px 80px}}
@media(max-width:400px){.guarantee-compact .guarantee-grid{grid-template-columns:1fr}.guarantee-compact .guarantee-heading h2{font-size:36px}}
/* Show downward progress beneath the step numbers. */
.approach-stacked .steps article:not(:last-child) h3::after{display:none}
.approach-stacked .steps article:not(:last-child)>span::after{content:"↓";display:block;margin-top:12px;color:#c7d0b5;font:600 26px/1 Arial,sans-serif}

/* Larger antlers centered beside the guarantee title. */
.guarantee-compact .guarantee-heading>div{padding-right:0}
.guarantee-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.guarantee-compact .guarantee-title-row .guarantee-antlers{position:static;width:121.52px;height:121.52px;margin:0;flex-shrink:0}

/* A deliberate two-column closing invitation. */
.contact-compact{grid-template-columns:1.35fr 1fr;padding:40px 48px;gap:48px}
.contact-compact>div:first-child{max-width:490px}
.contact-compact .eyebrow{margin:0 0 16px;letter-spacing:1.6px}
.contact-compact h2{font-size:clamp(43px,4.4vw,58px);line-height:1.04}
.contact-compact>div>p:not(.eyebrow){max-width:360px;margin:18px 0 22px;line-height:1.8}
.contact-compact .contact-right{height:100%;justify-content:center;align-items:center;gap:20px;border-left:1px solid #ffffff29;padding-left:40px}
.contact-compact .contact-buck{width:112px;height:112px;margin:0}
.contact-compact .contact-buck svg{opacity:.48}
.contact-compact .contact-right>div{text-align:center}
.contact-compact .contact-right a{font-size:clamp(23px,2.4vw,30px);line-height:1.25;margin-top:10px;white-space:nowrap}
.contact-compact .contact-right p{margin-top:10px;font-size:10px}
@media(max-width:700px){.contact-compact{grid-template-columns:1fr;padding:30px 27px;gap:28px}.contact-compact .contact-right{border-left:0;border-top:1px solid #ffffff29;padding:25px 0 0;align-items:flex-start;gap:0}.contact-compact .contact-right>div{text-align:left}.contact-compact .contact-buck{display:none}.contact-compact h2{font-size:43px}}
/* Quiet hover motion for the closing card's buck logo. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .contact-buck{transition:transform .3s ease;transform-origin:center}
  .contact-buck:hover{transform:translateY(-3px) scale(1.04)}
}
/* Match the Services heading artwork to the ink-colored “Our” text. */
.services .service-title-row .services-heading-icon{filter:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='ink' color-interpolation-filters='sRGB'%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 .12549 0 0 0 0 .15294 0 0 0 0 .16471 0 0 0 1 0'/%3E%3C/filter%3E%3C/svg%3E%23ink")}
/* Touch feedback mirrors desktop motion without sticky hover states. */
@media(hover:none) and (prefers-reduced-motion:no-preference){
  .services-heading-icon,.contact-buck,.guarantee-antlers,.guarantee-grid li,.partner-grid a,.team-person,.team-heading-icon,.story-heading,.about-region-outline,.capabilities-heading-icon,.capability,.commercial-approach li,.commercial-approach h2,.process-landscape h2,.process-landscape .steps article>span,.process-landscape .steps article>div{transition:transform .2s ease}
  .services-heading-icon:active,.contact-buck:active,.guarantee-antlers:active,.team-heading-icon:active,.capabilities-heading-icon:active{transform:translateY(-3px) scale(1.04)}
  .team-person:active,.guarantee-grid li:active,.partner-grid a:active,.capability:active{transform:translateY(-3px) scale(1.01)}
  .commercial-approach li:active{transform:translateX(4px)}
  .commercial-approach h2:active,.process-landscape h2:active,.process-landscape .steps article:active>span,.process-landscape .steps article:active>div{transform:translateY(-3px)}
  .story-copy .story-heading:active{transform:translateY(-20px) scale(1.025)}
  .about-region-outline:active{transform:translateY(-50%) scale(1.035)}
}
@media(hover:none) and (max-width:700px) and (prefers-reduced-motion:no-preference){.about-region-outline:active{transform:scale(1.035)}}

/* Mobile tap-to-call action for the conversation blocks. */
.mobile-phone-icon{display:none}
@media(max-width:700px){
  .contact-compact .contact-right .conversation-call,.inquiry-phone .conversation-call{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;max-width:100%;padding:13px 20px;border-radius:999px;background:#a5ed62;color:#20351a;font-size:20px;font-weight:700;line-height:1.2;white-space:nowrap;text-decoration:none}
  .conversation-call .mobile-phone-icon{display:block;width:21px;height:21px;flex-shrink:0}
  .conversation-call:active{background:#94dc53}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){.conversation-call{transition:transform .2s ease,background .2s ease}.conversation-call:active{transform:scale(.97)}}

/* Mobile hero separates the project photo from the story for clear reading. */
.mobile-hero-photo{display:none}
@media(max-width:700px){
  .hero:has(.vision-title){min-height:0;background:#eef0e8;border:1px solid #dfe4d6;border-radius:16px}
  .hero>.hero-image,.hero>.hero-shade{display:none}
  .hero .hero-copy{padding:28px 23px 30px}
  .hero .eyebrow{max-width:none;margin-bottom:16px;font-size:8px;letter-spacing:1.2px}
  .hero h1.vision-title{font-size:clamp(38px,10vw,62px);line-height:1.03}
  .mobile-hero-photo{display:block;position:relative;margin:22px 0 0;aspect-ratio:4/3;overflow:hidden;border:1px solid #cbd2c2;border-radius:12px;background:#e5e2d9}
  .mobile-hero-photo img{display:block;width:100%;height:119%;object-fit:cover;object-position:center top}
  .hero .hero-text.vision-copy{max-width:none;margin-top:22px;font-size:12px;line-height:1.85;color:#535c50}
  .hero .actions{margin-top:24px;gap:14px}
}

/* Mobile photo fills the hero's top panel behind the headline. */
@media(max-width:700px){
  .hero .hero-copy{padding:0 0 30px}
  .hero-heading-panel{position:relative;isolation:isolate;overflow:hidden;padding:30px 23px 38px;min-height:310px;display:flex;flex-direction:column;justify-content:center;background:#e5e2d9}
  .hero-heading-panel::before{content:"";position:absolute;inset:0 0 -19%;z-index:-2;background:url('assets/kitchen.png') center top/cover no-repeat}
  .hero-heading-panel::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#eef0e8de 0%,#eef0e8b8 30%,#eef0e842 70%,#eef0e814),linear-gradient(0deg,#eef0e8,transparent 22%)}
  .hero .hero-text.vision-copy{margin:20px 23px 0}
  .hero .actions{margin:24px 23px 0}
}

/* Center the mobile closing invitation and surface the service area earlier. */
.services-mobile-location{display:block;font-size:12px;line-height:1.7;color:var(--muted);margin-top:14px}
@media(max-width:700px){
  .contact-compact{text-align:center;justify-items:center}
  .contact-compact>div:first-child{width:100%}
  .contact-compact>div>p:not(.eyebrow){margin-left:auto;margin-right:auto}
  .contact-compact .contact-right{width:100%;align-items:center}
  .contact-compact .contact-right>div{text-align:center}
  .contact-compact .contact-location{display:none}
  .services-mobile-location{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:14px}
}

/* Keep the mobile accreditation badge alongside the company identity. */
.footer-rating-mobile{display:none}
@media(max-width:700px){
  .footer-brand-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
  .footer-brand-row .brand{min-width:0;gap:10px;font-size:10px;letter-spacing:1.4px}
  .footer-brand-row .brand small{font-size:7px;letter-spacing:3px}
  .footer-rating-mobile{display:block;width:82px;height:auto;flex-shrink:0;border-radius:10px}
  .footer-affiliation .footer-rating{display:none}
}
@media(max-width:360px){.footer-rating-mobile{width:68px}.footer-brand-row{gap:8px}}
/* Larger, cleanly clipped mobile BBB badge aligned with the brand lockup. */
@media(max-width:700px){
  .footer-brand-row{align-items:center}
  .footer-rating-mobile{width:102px;height:auto;align-self:center;border:0;border-radius:12px;clip-path:inset(1px round 12px)}
}
@media(max-width:360px){.footer-rating-mobile{width:90px}}

/* Full-width desktop cards with horizontal process and guarantee content. */
@media(min-width:851px){
  .process-guarantee{grid-template-columns:minmax(0,1fr);gap:28px}
  .approach-stacked .confidence-copy{padding:40px 42px 70px}
  .approach-stacked .steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:32px}
  .approach-stacked .steps article{grid-template-columns:minmax(0,1fr);gap:14px}
  .approach-stacked .steps article>div{grid-column:1}
  .approach-stacked .steps article>span{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:space-between}
  .approach-stacked .steps article:not(:last-child)>span::after{content:"→";display:block;margin:0;font-size:30px}
  .guarantee-compact{padding:36px 42px}
  .guarantee-compact .guarantee-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 28px}
  .guarantee-compact .guarantee-grid h3{font-size:14px}
  .guarantee-compact .guarantee-grid p,.guarantee-compact .guarantee-heading>p{font-size:12px}
}

/* Place desktop progress arrows directly to the right of the numbers. */
@media(min-width:851px){
  .approach-stacked .steps article>span{justify-content:flex-start;gap:16px}
  .approach-stacked .steps article:not(:last-child)>span::after{content:"→";display:block;margin:0;font-size:30px}
  .approach-stacked .steps article:not(:last-child) h3::after{display:none}
}

/* Align the final desktop check with the numbered progress arrows. */
@media(min-width:851px){
  .approach-stacked .steps article:last-child h3::after{display:none}
  .approach-stacked .steps article:last-child>span::after{content:"✓";display:block;margin:0;color:#c7d0b5;font:600 26px/1 Arial,sans-serif}
}

/* Simplify process steps to headings with directional markers. */
.approach-stacked .steps article>span{display:none}
.approach-stacked .steps article{grid-template-columns:minmax(0,1fr)}
.approach-stacked .steps article>div{grid-column:1}
.approach-stacked .steps h3{display:flex;align-items:center;gap:12px}
.approach-stacked .steps article:not(:last-child) h3::after{content:"→";display:block;color:#c7d0b5;font:600 30px/1 Arial,sans-serif;flex-shrink:0}
.approach-stacked .steps article:last-child h3::after{content:"✓";display:block;color:#c7d0b5;font:600 26px/1 Arial,sans-serif;flex-shrink:0}

/* Match process markers to the heading color and vertical center. */
.approach-stacked .steps h3{align-items:center}
.approach-stacked .steps article:not(:last-child) h3::after,
.approach-stacked .steps article:last-child h3::after{color:inherit;font-size:1.35em;line-height:1;align-self:center;position:relative;top:-.06em}

/* Keep the entire kitchen silhouette inside its service icon frame. */
.service-icon-frame .original-service-icon[src="assets/service-kitchen.png"]{transform:scale(1.45)}

/* Shared call pill on desktop as well as mobile. */
@media(min-width:701px){
 .contact-compact .contact-right .conversation-call,
 .commercial-inquiry-actions .inquiry-phone .conversation-call{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;max-width:100%;padding:13px 20px;border-radius:999px;background:#a5ed62;color:#20351a;font-size:20px;font-weight:700;line-height:1.2;white-space:nowrap;text-decoration:none}
 .conversation-call .mobile-phone-icon{display:block;width:21px;height:21px;flex-shrink:0}
 .contact-compact .contact-right .conversation-call:hover,
 .commercial-inquiry-actions .inquiry-phone .conversation-call:hover{background:#94dc53}
}
@media(min-width:701px) and (prefers-reduced-motion:no-preference){
 .conversation-call{transition:transform .2s ease,background .2s ease}
 .conversation-call:active{transform:scale(.97)}
}

/* Match the homepage invitation to the compact Commercial quote card. */
.contact.contact-compact{background:#fff;color:var(--ink);border:1px solid #e1e5d8;border-radius:16px;padding:30px 38px;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:36px;align-items:center}
.contact-compact .eyebrow{color:var(--olive)}
.contact.contact-compact h2{font-size:44px;line-height:1.05}
.contact-compact h2 em{color:var(--olive)}
.contact-compact>div>p:not(.eyebrow){color:var(--muted);max-width:460px;margin:14px 0 0;line-height:1.7;font-size:13px}
.contact-compact .contact-right{height:auto;border-left:1px solid var(--line);padding-left:32px;gap:18px}
.contact-compact .contact-right>div>span{color:var(--olive);font-size:9px;letter-spacing:1.2px}
.contact-compact .contact-right>.button,.contact-compact .contact-right .conversation-call{width:250px;max-width:100%;justify-content:center;box-sizing:border-box}
.contact-compact .contact-right .action-chevron{color:inherit;display:inline-flex;align-items:center;font-size:24px;line-height:1;font-weight:400;letter-spacing:0}
@media(max-width:700px){
 .contact.contact-compact{grid-template-columns:1fr;padding:26px 23px;gap:22px;text-align:center}
 .contact.contact-compact h2{font-size:38px}
 .contact-compact .contact-right{border:0;padding:0}
}

/* Preserve the homepage's olive treatment with the compact quote layout. */
.contact.contact-compact{background:var(--olive);color:#fff;border-color:var(--olive)}
.contact-compact .eyebrow,.contact-compact .contact-right>div>span{color:#d4dfbc}
.contact-compact h2 em{color:#d1dabf}
.contact-compact>div>p:not(.eyebrow){color:#e1e6d8}
.contact-compact .contact-right{border-left-color:#ffffff29}
.contact-compact .contact-right>.button{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.contact-compact .contact-right>.button:hover{background:#e9edde;border-color:#e9edde}

/* One shared vertical rhythm for the homepage's main cards. */
.home-cards{--card-gap:32px;display:flex;flex-direction:column;gap:var(--card-gap);padding-bottom:var(--card-gap)}
.home-cards>.wrap{margin-top:0;margin-bottom:0}
.home-cards .hero+.services.section{margin-top:0}
.home-cards>.process-guarantee{padding-block:0;gap:var(--card-gap)}
@media(max-width:700px){.home-cards{--card-gap:24px}}

/* Enlarge only the West Park footer logo by twenty percent. */
.footer-affiliation>a>img{width:156px;height:102px;flex-shrink:0}
@media(max-width:700px){.footer-affiliation>a>img{width:132px;height:96px}}

/* Give the desktop sunset and horizon room beneath the process content. */
@media(min-width:851px){.approach-stacked .process-landscape{min-height:420px}.approach-stacked .process-landscape>img{object-position:center 78%}}

/* Shared public header card; retain room for the mobile dropdown. */
.header{position:relative;background:#fff;border-radius:16px;box-shadow:0 5px 22px #20272a0a,0 1px 4px #20272a05;padding-inline:28px;margin-top:20px;margin-bottom:24px;z-index:20}
@media(max-width:1050px){.header{padding-inline:20px}.header nav{gap:24px}.header nav .nav-cta + .nav-cta{margin-left:-12px}}
@media(max-width:700px){.header{padding-inline:16px;margin-top:12px;margin-bottom:16px;border-radius:14px}.header nav{top:calc(100% + 8px);left:0;right:0;background:#fff;gap:22px}.header nav .nav-cta + .nav-cta{margin-left:-6px}}
@media(min-width:701px) and (max-width:850px){.header{gap:18px}.header nav{gap:16px;font-size:11px}.header .nav-cta{gap:16px;padding:11px 14px}.header nav .nav-cta + .nav-cta{margin-left:-6px}}

/* Extend the header surface while preserving the inner content's scale and alignment. */
.header.wrap{width:calc(100% - 48px);max-width:1398px;height:132px;padding-inline:52px;border-radius:26px}
@media(max-width:1050px){.header.wrap{width:calc(100% - 24px);padding-inline:32px}}
@media(max-width:700px){.header.wrap{width:calc(100% - 16px);height:104px;padding-inline:24px;border-radius:22px}}

/* Gentle header-mark feedback without moving the wordmark or divider. */
.header .buck-logo svg{transform-origin:50% 65%;transition:transform .28s cubic-bezier(.2,.7,.3,1)}
@media(hover:hover) and (pointer:fine){.header .brand:hover .buck-logo svg{transform:translateY(-3px) scale(1.04)}}
.header .brand:focus-visible .buck-logo svg,.header .brand:active .buck-logo svg{transform:translateY(-3px) scale(1.04)}
@media(prefers-reduced-motion:reduce){.header .brand .buck-logo svg{transition:none;transform:none!important}}

/* Slow, restrained photo-only zoom; hero copy and fade remain stationary. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .home-cards .hero>.hero-image{transform:scale(1);transform-origin:65% 40%;transition:transform .9s cubic-bezier(.2,.65,.3,1)}
  .home-cards .hero:hover>.hero-image{transform:scale(1.025)}
}
