/* Editorial service pages: local photography, shared Archly palette and type. */
.service-page .section{padding-block:85px}
.service-page .service-hero{padding-bottom:65px}
.service-page .service-hero-grid{grid-template-columns:1.05fr 1fr;gap:65px}
.service-page .service-hero figure{overflow:hidden;border-radius:var(--radius-photo)}
.service-page .service-hero figure img{height:530px;transition:transform .8s}
.service-page .service-detail-grid{gap:65px;padding-block:65px}
.service-page .service-body>h2{font-size:44px}
.service-page .service-body>.lead{font-size:17px;line-height:1.85}
.service-page .service-sidebar{align-self:start}
.service-page .sidebar-request{margin-top:24px;font-size:13px;border-bottom:1px solid var(--accent)}
.service-page .service-factors{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:35px}
.service-page .service-factors h3{font-size:22px}
.service-page .service-factors p{font-size:14px;line-height:1.75}
.service-options{background:var(--dark)}
.service-options-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;align-items:stretch}
.service-options h2{font-size:clamp(34px,3.4vw,48px)}
.service-feature-photo{position:relative;min-height:620px;overflow:hidden;border-radius:64px 20px 20px 20px}
.service-feature-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center}
.service-section-intro{margin-top:25px;font-size:17px;line-height:1.8}
.service-option-list{margin-top:32px}
.service-option-list article{padding:25px 0;border-top:1px solid var(--line)}
.service-option-list article:last-child{padding-bottom:0}
.service-option-list h3{font-size:25px;margin-bottom:13px}
.service-option-list p{font-size:15px;line-height:1.8}
.service-design .section-heading{align-items:center;margin-bottom:38px}
.service-design .section-heading>.text-link{flex:none}
.service-design-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.service-design-grid article{padding:30px 25px;border:1px solid var(--line);border-radius:var(--radius-card);background:linear-gradient(#32343bcc,#32343be6),url('/assets/images/service-lines.webp') center bottom/100% auto no-repeat;transition:transform .3s,border-color .3s,background-color .3s}
.service-design-grid h3{font-size:25px;margin-bottom:20px}
.service-design-grid p{font-size:14px;line-height:1.85}
.service-gallery{background:var(--dark)}
.service-gallery>.container>h2{max-width:800px;margin-bottom:45px}
.service-gallery-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:55px;align-items:start}
.service-gallery-grid figure:nth-child(2){margin-top:95px}
.service-gallery-grid img{width:100%;height:440px;object-fit:cover;border-radius:var(--radius-photo)}
.service-gallery-grid figure:nth-child(2) img{height:350px}
.service-gallery-grid figcaption{padding-top:26px}
.service-gallery-grid h3{font-size:29px;margin-bottom:17px}
.service-gallery-grid p{font-size:15px;line-height:1.85;max-width:590px}
.service-path{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.service-path li{position:relative;padding:30px;border:1px solid var(--line);border-radius:var(--radius-card);transition:border-color .3s,transform .3s}
.service-path-number{display:block;font:400 54px/1 var(--heading);color:var(--accent);margin-bottom:24px}
.service-path h3{font-size:26px;margin-bottom:20px}
.service-path p{font-size:15px;line-height:1.8}
.service-questions{background:var(--dark)}
.service-questions-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}
.service-questions .service-faq-title{font-size:clamp(34px,3.4vw,48px);margin:0}
.service-questions .prepare-panel{margin:30px 0 0;padding:30px;background:var(--accent);color:#282a31;border:0}
.service-questions .prepare-panel h3{color:#282a31;font-size:25px}
.service-questions .prepare-panel p,.service-questions .prepare-panel li{font-size:14px}
.service-questions .faq-item summary{font-size:20px;padding-block:24px}
.service-questions .faq-item p{font-size:15px;line-height:1.85}
.service-final{padding-block:75px}
.service-final .service-next{position:relative;margin:0;padding:45px 310px 45px 45px;border:1px solid var(--line);border-radius:var(--radius-photo);background:var(--surface)}
.service-final .service-next h2{font-size:42px}
.service-final .service-next>p:not(.eyebrow){max-width:690px;margin-bottom:0;font-size:15px}
.service-final .service-next>.button{position:absolute;right:45px;top:50%;transform:translateY(-50%)}
@media(hover:hover) and (pointer:fine){.service-design-grid article:hover,.service-path li:hover{border-color:var(--accent);transform:translateY(-5px)}.service-page .service-hero figure:hover img{transform:scale(1.025)}}
@media(max-width:1199px){
 .service-page .service-hero-grid{gap:40px}
 .service-page .service-hero figure img{height:480px}
 .service-page .service-detail-grid{grid-template-columns:230px 1fr;gap:40px}
 .service-page .service-factors{grid-template-columns:1fr;gap:22px}
 .service-options-grid,.service-questions-grid{gap:45px}
 .service-design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-gallery-grid{gap:35px}
 .service-gallery-grid img{height:370px}
 .service-gallery-grid figure:nth-child(2) img{height:310px}
 .service-path{gap:20px}
 .service-path li{padding:25px}
 .service-path h3{font-size:23px}
 .service-final .service-next{padding-right:270px}
 .service-final .service-next>.button{right:30px}
}
@media(max-width:900px){
 .service-page .section{padding-block:65px}
 .service-page .service-hero-grid{gap:30px}
 .service-page .service-hero figure img{height:440px}
 .service-page .service-detail-grid{grid-template-columns:1fr;gap:35px}
 .service-page .service-sidebar{order:2}
 .service-page .service-body{order:1}
 .service-page .service-sidebar nav{grid-template-columns:1fr 1fr}
 .service-page .service-sidebar a{font-size:12px}
 .service-page .service-sidebar p{max-width:600px}
 .service-page .service-factors{grid-template-columns:repeat(3,minmax(0,1fr))}
 .service-options-grid{grid-template-columns:.8fr 1fr;gap:30px}
 .service-feature-photo{min-height:550px}
 .service-section-intro{font-size:16px}
 .service-option-list h3{font-size:23px}
 .service-gallery-grid{gap:28px}
 .service-gallery-grid img{height:330px}
 .service-gallery-grid figure:nth-child(2) img{height:290px}
 .service-questions-grid{grid-template-columns:1fr;gap:35px}
 .service-questions-grid>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}
 .service-questions .prepare-panel{margin:0}
 .service-path{grid-template-columns:1fr}
 .service-path li{padding:28px 28px 28px 105px}
 .service-path-number{position:absolute;left:28px;top:30px;font-size:42px}
 .service-path h3{font-size:26px;margin-bottom:14px}
 .service-final .service-next{padding:35px}
 .service-final .service-next>.button{position:static;transform:none;margin-top:25px}
}
@media(max-width:600px){
 .service-page .section{padding-block:48px}
 .service-page .service-hero{padding-bottom:40px}
 .service-page .service-hero-grid{grid-template-columns:1fr;gap:30px}
 .service-page .service-hero figure img{height:350px}
 .service-page .service-detail-grid{padding-block:42px}
 .service-page .service-body>h2{font-size:35px}
 .service-page .service-factors{grid-template-columns:1fr;gap:24px}
 .service-page .service-factors article{padding-top:22px}
 .service-page .service-sidebar nav{grid-template-columns:1fr}
 .service-options-grid{grid-template-columns:1fr;gap:35px}
 .service-feature-photo{height:370px;min-height:0;border-top-left-radius:45px}
 .service-options h2{font-size:35px}
 .service-option-list article{padding-block:23px}
 .service-design .section-heading{display:block}
 .service-design .section-heading .text-link{margin-top:24px}
 .service-design-grid{grid-template-columns:1fr;gap:16px}
 .service-design-grid article{padding:26px}
 .service-design-grid h3{margin-bottom:14px}
 .service-gallery-grid{grid-template-columns:1fr;gap:35px}
 .service-gallery-grid figure:nth-child(2){margin-top:0}
 .service-gallery-grid img,.service-gallery-grid figure:nth-child(2) img{height:300px}
 .service-gallery-grid figcaption{padding-top:22px}
 .service-gallery-grid h3{font-size:27px}
 .service-questions-grid>div:first-child{display:block}
 .service-questions .prepare-panel{margin-top:26px;padding:25px}
 .service-questions .faq-item summary{font-size:18px}
 .service-path li{padding:25px}
 .service-path-number{position:static;font-size:44px;margin-bottom:20px}
 .service-final{padding-block:45px}
 .service-final .service-next{padding:28px}
 .service-final .service-next h2{font-size:34px}
 .service-final .service-next .eyebrow{margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){.service-design-grid article:hover,.service-path li:hover{transform:none}.service-page .service-hero figure:hover img{transform:none}}

@media(min-width:901px){
 .service-page .service-sidebar{position:sticky;top:calc(var(--header-height) + 24px);max-height:calc(100dvh - var(--header-height) - 48px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--accent) transparent}
}
