.service-page{--service-muted:#66655f;--service-line:#ceccc3;background:var(--paper)}
.service-page .site-header{color:var(--ink);background:var(--paper);border-bottom-color:var(--service-line)}
.service-page .site-header.is-scrolled{background:rgba(241,239,233,.96)}
.service-page .brand img{filter:none}
.service-page .desktop-nav [aria-current]:after{right:0}
.service-page.menu-open .site-header{color:#fff;background:var(--ink);border-bottom-color:rgba(255,255,255,.15)}
.service-page.menu-open .brand img{filter:brightness(0) invert(1)}
.service-page :focus-visible{outline:2px solid #817256;outline-offset:6px}
.service-shell{max-width:1770px;margin:0 auto;padding:0 var(--gutter)}
.service-eyebrow{margin:0;color:var(--service-muted);font-size:.75rem;line-height:1.7;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.service-page h1,.service-page main h2,.service-page main h3{font-weight:400;letter-spacing:-.045em}
.service-page main h2{margin:0;font-size:clamp(2.5rem,4.8vw,5.1rem);line-height:1.12;text-wrap:balance}
.service-page main h2 em,.service-page h1 em{font-family:var(--serif);font-weight:400;color:#81745e}
.service-intro{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(245px,.7fr);gap:40px;align-items:end;padding:153px 0 46px}
.service-intro h1{margin:24px 0 0;font-size:clamp(3.3rem,7.7vw,8.5rem);line-height:1.02;letter-spacing:-.06em}
.service-intro-copy{max-width:315px;justify-self:end;padding-bottom:8px}
.service-intro-copy>p{margin:0 0 25px;color:var(--service-muted);line-height:1.9}
.service-text-link{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:48px;padding:12px 0;border-bottom:1px solid #ada590;font-size:.875rem;line-height:1.5}
.service-text-link svg{width:20px;height:20px;flex:none;transition:transform .25s}
.service-text-link:hover svg{transform:translate(2px,-2px)}
.service-page-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 36px;padding:12px 0;border-top:1px solid var(--service-line)}
.service-page-nav a{display:flex;align-items:center;min-height:44px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--service-muted)}
.service-page-nav a:hover{text-decoration:underline;text-underline-offset:6px}
.service-hero{margin:0}
.service-hero>img{width:100%;height:auto;aspect-ratio:1.92;object-fit:cover;object-position:var(--image-position,50% 50%);background:#ddd9d0}
.service-hero figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-top:12px;color:var(--service-muted);font-size:.75rem;line-height:1.7}
.service-hero figcaption a{display:flex;align-items:center;gap:15px;min-height:44px}
.service-hero figcaption a:hover{text-decoration:underline;text-underline-offset:5px}
.service-statement{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(45px,10vw,170px);padding:clamp(75px,9vw,145px) 0}
.service-statement .service-eyebrow{margin-bottom:27px}
.service-statement>div:last-child{align-self:center;max-width:590px}
.service-statement p:not(.service-eyebrow){color:var(--service-muted);line-height:1.9;margin:0 0 24px}
.service-statement p.service-definition{color:var(--ink);font-size:1.125rem;line-height:1.85}
.service-statement p:last-child{margin-bottom:0}
.service-scope,.service-questions{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(45px,9vw,150px);padding:80px 0 110px;border-top:1px solid var(--service-line)}
.service-section-heading .service-eyebrow{margin-bottom:27px}
.service-section-heading>p:last-child{max-width:345px;margin:28px 0 0;color:var(--service-muted);line-height:1.9}
.service-scope-list{list-style:none;margin:0;padding:0}
.service-scope-list li{display:grid;grid-template-columns:35px 1fr;gap:20px;padding:28px 0;border-top:1px solid var(--service-line)}
.service-scope-list li:first-child{padding-top:0;border-top:0}
.service-scope-list li:last-child{padding-bottom:0}
.service-scope-list li>span{font-family:var(--serif);color:#81745e;font-size:1.125rem;padding-top:5px}
.service-scope-list h3{margin:0 0 12px;font-size:clamp(1.4rem,2.1vw,2rem);line-height:1.3}
.service-scope-list p{margin:0;max-width:560px;color:var(--service-muted);font-size:.9375rem;line-height:1.85}
.service-process{padding:clamp(75px,8vw,130px) 0;background:#1b211d;color:var(--paper)}
.service-process .service-eyebrow{color:var(--stone);margin-bottom:28px}
.service-page .service-process h2 em{color:var(--stone)}
.service-process-heading,.service-work-heading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.7fr);gap:40px;align-items:end}
.service-process-heading>p,.service-work-heading>p{max-width:325px;justify-self:end;margin:0 0 5px;line-height:1.85;color:#c3c8bd}
.service-process-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;list-style:none;padding:0;margin:74px 0 0}
.service-process-list li{border-top:1px solid #555e51;padding-top:25px}
.service-step{display:block;color:var(--stone);font-family:var(--serif);font-size:1.3rem;margin-bottom:35px}
.service-process-list h3{margin:0 0 18px;font-size:1.375rem;line-height:1.35;letter-spacing:-.03em}
.service-process-list p{margin:0;color:#c3c8bd;font-size:.875rem;line-height:1.85}
.service-work{padding:clamp(75px,9vw,145px) 0 100px}
.service-work-heading .service-eyebrow{margin-bottom:27px}
.service-work-heading>p{color:var(--service-muted)}
.service-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,4vw,70px);align-items:start;margin-top:60px}
.service-project:nth-child(2){padding-top:105px}
.service-project>a{display:block}
.service-project figure{margin:0;position:relative;aspect-ratio:1.18;background:#ddd9d0;overflow:hidden}
.service-project:nth-child(2) figure{aspect-ratio:1.45}
.service-project img{width:100%;height:100%;object-fit:cover;object-position:var(--image-position,50% 50%);transition:transform 1s cubic-bezier(.2,.65,.2,1)}
.service-photo-number{position:absolute;left:20px;top:20px;background:rgba(241,239,233,.95);padding:7px 11px;font-size:.75rem;line-height:1.5}
.service-project-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:23px}
.service-project-caption h3{margin:8px 0 9px;font-size:clamp(1.65rem,2.5vw,2.65rem);line-height:1.15}
.service-project-caption p:last-child{margin:0;color:var(--service-muted);font-size:.875rem}
.service-circle{display:grid;place-items:center;width:52px;aspect-ratio:1;flex:none;border:1px solid #bcb6a7;border-radius:50%;transition:background .25s,transform .3s}
.service-circle svg{width:21px;height:21px}
@media(hover:hover){.service-project>a:hover img{transform:scale(1.025)}.service-project>a:hover .service-circle{background:#e0dbce;transform:translate(2px,-2px)}}
.service-all-work{max-width:360px;margin:52px 0 0 auto}
.service-areas{padding:85px 0;border-top:1px solid var(--service-line);border-bottom:1px solid var(--service-line);text-align:center}
.service-areas .service-eyebrow{margin-bottom:25px}
.service-areas>p:not(.service-eyebrow){max-width:680px;margin:30px auto;color:var(--service-muted);line-height:1.9}
.service-areas .service-text-link{max-width:320px;margin:auto;text-align:left}
.service-questions{padding:100px 0 90px;border-top:0}
.service-faq-list details{border-top:1px solid var(--service-line)}
.service-faq-list details:last-child{border-bottom:1px solid var(--service-line)}
.service-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:80px;padding:24px 0;list-style:none;cursor:pointer;font-size:1rem;line-height:1.6}
.service-faq-list summary::-webkit-details-marker{display:none}
.service-faq-list summary>span{display:block;flex:none;font-size:1.75rem;font-weight:300;line-height:1;transition:transform .2s}
.service-faq-list details[open] summary>span{transform:rotate(45deg)}
.service-faq-list details>p{max-width:620px;margin:0 42px 27px 0;color:var(--service-muted);font-size:.9375rem;line-height:1.9}
.service-other{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--service-line);padding:30px 0;margin-bottom:40px}
.service-other>span:last-child{display:flex;align-items:center;gap:30px;font-size:clamp(1.1rem,1.8vw,1.7rem);letter-spacing:-.025em}
.service-other:hover>span:last-child{text-decoration:underline;text-underline-offset:6px}
.service-invitation{padding:clamp(65px,8vw,120px) 0;background:#ddd7c9}
.service-invitation .service-eyebrow{color:#565248;margin-bottom:30px}
.service-invitation-title{display:flex;justify-content:space-between;align-items:center;gap:35px}
.service-invitation-title h2{font-size:clamp(3rem,7.5vw,8rem)!important;line-height:1.05!important}
.service-invitation-title .service-circle{width:clamp(65px,10vw,155px);border-color:#a39c89}
.service-invitation-title .service-circle svg{width:35%;height:35%;stroke-width:1}
.service-invitation-title:hover .service-circle{background:#eee9de;transform:translate(3px,-3px)}
.service-invitation-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #b7af9d;margin-top:50px;padding-top:23px;color:#565248;font-size:.875rem;line-height:1.6}
.service-invitation-bottom p{margin:0}
.service-invitation-bottom a{display:flex;align-items:center;min-height:44px;white-space:nowrap}
@media(max-width:1100px){.service-intro{grid-template-columns:minmax(0,1.6fr) minmax(220px,.7fr);gap:25px}.service-statement{gap:50px}.service-scope,.service-questions{gap:50px}.service-process-list{grid-template-columns:1fr 1fr;gap:45px}.service-step{margin-bottom:23px}.service-project:nth-child(2){padding-top:80px}}
@media(max-width:760px){
 .service-page .site-header,.service-page .site-header.is-scrolled{grid-template-columns:1fr auto}
 .service-intro{display:block;padding:115px 0 25px}
 .service-intro h1{font-size:clamp(2.85rem,11.5vw,5rem);margin-top:20px}
 .service-intro-copy{max-width:450px;margin-top:28px;padding:0}
 .service-intro-copy>p{line-height:1.8;margin-bottom:16px}
 .service-intro-copy .service-text-link{max-width:325px}
 .service-page-nav{justify-content:flex-start;gap:0 22px;padding:10px 0}
 .service-page-nav a{font-size:.6875rem;letter-spacing:.05em}
 .service-hero>img{aspect-ratio:1.2}
 .service-hero figcaption{display:block;padding-top:12px}
 .service-hero figcaption>a{width:max-content;max-width:100%}
 .service-statement{display:block;padding:65px 0}
 .service-statement>div:last-child{margin-top:30px}
 .service-statement p.service-definition{font-size:1.0625rem}
 .service-page main h2{font-size:clamp(2.2rem,8.5vw,3.75rem)}
 .service-scope,.service-questions{display:block;padding:60px 0}
 .service-section-heading>p:last-child{max-width:440px;margin-top:23px}
 .service-scope-list,.service-faq-list{margin-top:38px}
 .service-scope-list li{gap:12px}
 .service-process{padding:65px 0}
 .service-process-heading,.service-work-heading{display:block}
 .service-process-heading>p,.service-work-heading>p{max-width:450px;margin:25px 0 0}
 .service-process-list{margin-top:45px;gap:32px 25px}
 .service-process-list h3{font-size:1.125rem}
 .service-step{margin-bottom:20px}
 .service-work{padding:65px 0}
 .service-project-grid{grid-template-columns:1fr;gap:42px;margin-top:35px}
 .service-project:nth-child(2){padding-top:0}
 .service-project figure,.service-project:nth-child(2) figure{aspect-ratio:1.3}
 .service-project-caption{padding-top:18px}
 .service-all-work{margin-top:35px;max-width:none}
 .service-areas{padding:60px 0;text-align:left}
 .service-areas>p:not(.service-eyebrow){margin:25px 0}
 .service-areas .service-text-link{margin:0}
 .service-faq-list summary{font-size:.9375rem;gap:20px;padding:21px 0}
 .service-faq-list details>p{margin-right:20px}
 .service-other{display:block;padding:25px 0;margin-bottom:25px}
 .service-other>span:last-child{justify-content:space-between;margin-top:10px}
 .service-invitation-title{gap:18px}
 .service-invitation-title h2{font-size:clamp(2.5rem,9.2vw,4.5rem)!important}
 .service-invitation-title .service-circle{width:50px}
 .service-invitation-bottom{display:block;margin-top:30px}
 .service-invitation-bottom>a{margin-top:10px}
}
@media(max-width:390px){.service-process-list{grid-template-columns:1fr}.service-invitation-title .service-circle{width:40px}.service-page-nav{gap:0 17px}}
@media(prefers-reduced-motion:reduce){.service-page *{scroll-behavior:auto!important;transition:none!important}.service-project>a:hover img{transform:none}}
