:root { color-scheme: dark; }
.services-page { background: var(--ink); color: var(--paper); }
.top-nav .is-current { color: var(--accent); }
.top-nav .is-current::after { right: 0; }
.services-hero { position:relative; min-height:100svh; display:grid; grid-template-columns:minmax(0,2.8fr) minmax(14rem,1fr); align-items:end; gap:clamp(2rem,6vw,8rem); padding:clamp(9rem,17vh,13rem) var(--pad) clamp(4rem,8vh,7rem); overflow:hidden; }
.services-hero__grid { position:absolute; inset:0 var(--pad); opacity:.28; background-image:linear-gradient(to right,var(--line) 1px,transparent 1px); background-size:25% 100%; mask-image:linear-gradient(to bottom,transparent,black 15%,black 88%,transparent); }
.services-hero::after { content:""; position:absolute; right:7vw; top:19%; width:clamp(17rem,31vw,34rem); aspect-ratio:1; border:1px solid rgba(169,181,138,.15); border-radius:50%; box-shadow:0 0 0 5vw rgba(169,181,138,.025),0 0 0 10vw rgba(169,181,138,.018); pointer-events:none; }
.services-hero__copy,.services-hero__aside { position:relative; z-index:1; }
.services-hero__copy { max-width:74rem; }
.services-hero__copy .eyebrow { margin-bottom:2rem; color:var(--accent); }
.services-hero h1 { max-width:68rem; margin:0; font-size:clamp(3.25rem,6.7vw,7.4rem); line-height:.94; font-weight:300; letter-spacing:-.065em; text-wrap:balance; }
.services-hero h1 em { display:block; color:var(--accent); font-style:normal; }
.services-hero__copy > p:not(.eyebrow) { max-width:35rem; margin:2.2rem 0 0; color:var(--muted); font-size:clamp(1rem,1.3vw,1.25rem); line-height:1.6; }
.services-hero__actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.4rem; }
.service-cta,.service-select { display:inline-flex; align-items:center; justify-content:center; min-height:3.25rem; padding:.8rem 1.4rem; border:1px solid rgba(241,238,230,.25); background:transparent; color:var(--paper); cursor:pointer; font:400 .66rem var(--mono); letter-spacing:.07em; text-transform:uppercase; transition:background .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease),transform .35s var(--ease); }
.service-cta:hover,.service-cta:focus-visible,.service-select:hover,.service-select:focus-visible { transform:translateY(-3px); border-color:var(--accent); outline:none; }
.service-cta--accent,.service-select--accent { border-color:var(--accent); background:var(--accent); color:var(--ink); }
.services-hero__aside { justify-self:end; margin:0; padding-left:1.5rem; border-left:1px solid var(--accent); color:var(--muted); font-size:clamp(.9rem,1.15vw,1.1rem); line-height:1.75; }
.service-paths { border-top:1px solid var(--line); }
.section-heading { display:grid; grid-template-columns:1fr 2.6fr; gap:2rem; padding:clamp(4rem,8vw,8rem) var(--pad); border-bottom:1px solid var(--line); }
.section-heading .eyebrow { color:var(--accent); }
.section-heading h2 { max-width:58rem; margin:0; font-size:clamp(2.5rem,5vw,5.3rem); line-height:1; font-weight:300; letter-spacing:-.055em; }
.service-path { display:grid; grid-template-columns:minmax(18rem,1.15fr) minmax(0,1fr); min-height:42rem; border-bottom:1px solid var(--line); }
.service-path__name,.service-path__body { padding:clamp(3.5rem,7vw,7rem) var(--pad); }
.service-path__name { position:relative; border-right:1px solid var(--line); overflow:hidden; }
.service-path__name::after { content:""; position:absolute; width:22rem; aspect-ratio:1; right:-8rem; bottom:-9rem; border:1px solid rgba(169,181,138,.13); border-radius:50%; }
.service-path__name .eyebrow { margin-bottom:2rem; color:var(--accent); }
.service-path h3 { margin:0; font-size:clamp(3.2rem,6vw,7rem); line-height:.92; font-weight:300; letter-spacing:-.065em; }
.service-path__signal { display:inline-block; margin-top:2.5rem; color:var(--accent); font:300 .68rem var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.service-path__body { display:flex; flex-direction:column; justify-content:center; }
.service-path__lead { max-width:35rem; margin:0 0 2.5rem; color:var(--muted); font-size:clamp(1.1rem,1.55vw,1.45rem); line-height:1.55; }
.service-path ul { list-style:none; padding:0; margin:0 0 3rem; }
.service-path li { padding:1rem 0; border-top:1px solid var(--line); font-size:clamp(.9rem,1vw,1.05rem); }
.service-path li:last-child { border-bottom:1px solid var(--line); }
.service-select { align-self:flex-start; }
.service-path--featured { background:linear-gradient(115deg,rgba(169,181,138,.11),rgba(169,181,138,.02) 55%,transparent); }
.working-process { padding-bottom:clamp(5rem,10vw,10rem); background:var(--paper); color:var(--ink); }
.working-process .section-heading { border-color:rgba(16,16,15,.18); }
.working-process .section-heading .eyebrow { color:#65704f; }
.process-line { display:grid; grid-template-columns:repeat(5,1fr); margin:0 var(--pad); border-top:1px solid rgba(16,16,15,.2); border-bottom:1px solid rgba(16,16,15,.2); }
.process-line article { min-height:18rem; padding:2rem 1.5rem; border-right:1px solid rgba(16,16,15,.16); }
.process-line article:last-child { border-right:0; }
.process-line h3 { margin:0 0 5rem; font-size:clamp(1.4rem,2vw,2.1rem); font-weight:400; letter-spacing:-.04em; }
.process-line p { margin:0; color:#63635f; line-height:1.55; font-size:.9rem; }
.project-intake { display:grid; grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr); gap:clamp(3rem,8vw,9rem); padding:clamp(6rem,10vw,11rem) var(--pad); }
.project-intake__intro { position:sticky; top:9rem; align-self:start; }
.project-intake__intro .eyebrow { margin-bottom:2rem; color:var(--accent); }
.project-intake__intro h2 { margin:0; font-size:clamp(3rem,5vw,5.8rem); line-height:.96; font-weight:300; letter-spacing:-.06em; }
.project-intake__intro > p:last-child { max-width:31rem; margin:2rem 0 0; color:var(--muted); line-height:1.65; }
.project-form { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem 1rem; padding:clamp(1.5rem,3vw,3rem); border:1px solid var(--line); background:rgba(241,238,230,.025); }
.form-field { display:flex; flex-direction:column; gap:.65rem; }
.form-field--wide { grid-column:1/-1; }
.form-field label { font:300 .58rem var(--mono); letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.form-field label span { opacity:.6; }
.form-field input,.form-field select,.form-field textarea { width:100%; min-height:3.2rem; padding:.85rem 0; border:0; border-bottom:1px solid rgba(241,238,230,.22); border-radius:0; outline:0; background:transparent; color:var(--paper); font:300 1rem var(--display); }
.form-field select { appearance:none; }
.form-field textarea { min-height:7rem; resize:vertical; line-height:1.5; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--accent); }
.form-field option { background:var(--ink-soft); }
.honeypot { position:absolute!important; left:-9999px!important; }
.project-form__status { grid-column:1/-1; min-height:1.4rem; margin:0; color:var(--accent); font-size:.85rem; line-height:1.5; }
.project-form__status.is-error { color:#d39b90; }
.project-form__submit { grid-column:1/-1; min-height:3.7rem; border:1px solid var(--accent); background:var(--accent); color:var(--ink); cursor:pointer; font:400 .68rem var(--mono); letter-spacing:.09em; text-transform:uppercase; }
.project-form__submit:disabled { opacity:.55; cursor:wait; }
@media(max-width:1080px){.services-hero{grid-template-columns:1fr}.services-hero__aside{justify-self:start}.service-path{grid-template-columns:1fr}.service-path__name{border-right:0;border-bottom:1px solid var(--line)}.process-line{grid-template-columns:repeat(2,1fr)}.process-line article:nth-child(even){border-right:0}.process-line article:last-child{grid-column:1/-1}.project-intake{grid-template-columns:1fr}.project-intake__intro{position:static}}
@media(max-width:760px){.services-hero{min-height:92svh;padding-top:8rem}.services-hero h1{font-size:clamp(3rem,14vw,4.7rem)}.services-hero__aside{display:none}.section-heading{grid-template-columns:1fr;padding:4rem var(--pad)}.section-heading h2{font-size:2.7rem}.service-path{min-height:0}.service-path__name,.service-path__body{padding:3.5rem var(--pad)}.service-path h3{font-size:clamp(3rem,13vw,4.8rem)}.process-line{grid-template-columns:1fr}.process-line article,.process-line article:nth-child(even),.process-line article:last-child{grid-column:auto;min-height:auto;border-right:0;border-bottom:1px solid rgba(16,16,15,.16)}.process-line h3{margin-bottom:1.5rem}.project-intake{padding:5rem var(--pad)}.project-form{grid-template-columns:1fr;padding:1.25rem}.form-field,.form-field--wide{grid-column:1}.site-footer{gap:1rem}.site-footer span:nth-child(2){display:none}}
