.service-dock{position:fixed;z-index:38;left:50%;bottom:clamp(18px,3vh,32px);display:flex;align-items:center;max-width:calc(100vw - 28px);padding:5px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(255,255,255,.58);box-shadow:0 16px 46px rgba(39,29,21,.14),inset 0 1px 0 rgba(255,255,255,.86);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);transform:translateX(-50%) scale(.9);transform-origin:center bottom;transition:transform .42s cubic-bezier(.22,1,.36,1),filter .42s cubic-bezier(.22,1,.36,1)}
.service-dock:hover,.service-dock:focus-within{transform:translateX(-50%) scale(1);filter:drop-shadow(0 18px 28px rgba(31,23,17,.18))}
.service-dock a{white-space:nowrap;padding:10px 17px;border-radius:999px;color:rgba(35,27,21,.78);font-size:11px;letter-spacing:.06em;transition:background .32s cubic-bezier(.22,1,.36,1),color .25s,transform .32s cubic-bezier(.22,1,.36,1)}
.service-dock a:hover{color:var(--deep);background:rgba(255,255,255,.46);transform:translateY(-1px)}
.service-dock a.active{color:var(--cream);background:linear-gradient(120deg,#a88160,#76543b);box-shadow:0 6px 18px rgba(67,44,28,.2)}
.service-process{background:var(--deep);color:var(--cream);overflow:hidden}
.service-process .process-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;margin-bottom:58px}
.service-process .process-head p{color:#a99a8b;font-size:15px;line-height:2}
.service-steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-top:58px}
.service-steps:before,.service-steps:after{content:'';position:absolute;left:4%;top:15px;height:1px}
.service-steps:before{right:4%;background:rgba(255,255,255,.18)}
.service-steps:after{width:0;background:var(--sand);transition:width 2.2s cubic-bezier(.22,1,.36,1)}
.service-steps.in:after{width:92%}
.service-step{padding:0 22px}
.service-step i{position:relative;z-index:2;display:block;width:31px;height:31px;margin-bottom:28px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:#171411;transition:.5s}
.service-steps.in .service-step i{background:var(--sand);border-color:var(--sand);box-shadow:0 0 0 5px rgba(196,174,150,.12)}
.service-step span{display:block;margin-bottom:12px;color:var(--sand);font-size:10px;letter-spacing:.22em}
.service-step h3{margin:0 0 12px;font-family:var(--serif);font-size:clamp(24px,2.3vw,31px);font-weight:300}
.service-step p{color:#a99a8b;font-size:13px;line-height:1.8}
.pricing-framework{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;margin-top:clamp(72px,9vw,120px);padding-top:clamp(58px,7vw,92px);border-top:1px solid rgba(255,255,255,.14)}
.pricing-framework h3{font-family:var(--serif);font-size:clamp(36px,4.5vw,58px);font-weight:300;line-height:1.2}
.pricing-factors{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12)}
.pricing-factors div{padding:24px;background:#171310}
.pricing-factors b{display:block;margin-bottom:8px;color:var(--cream);font-size:13px;font-weight:400}
.pricing-factors p{margin:0;color:#a99a8b;font-size:12px;line-height:1.7}
section[id]{scroll-margin-top:100px}
@media(max-width:760px){.service-dock{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 24px);overflow-x:auto;scrollbar-width:none;transform:translateX(-50%)}.service-dock:hover,.service-dock:focus-within{transform:translateX(-50%);filter:none}.service-dock a{flex:1;min-height:42px;padding:10px 8px;text-align:center;font-size:10px;letter-spacing:.01em}.service-process .process-head{grid-template-columns:1fr;gap:24px}.service-steps{display:flex;gap:14px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x proximity;touch-action:auto;overscroll-behavior-x:contain}.service-steps:before,.service-steps:after{display:none}.service-step{flex:0 0 82vw;min-height:270px;padding:28px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.04));scroll-snap-align:center}.service-step i{display:none}.pricing-framework{grid-template-columns:1fr;gap:30px}.pricing-factors{grid-template-columns:1fr}.service-process,.pricing-framework{padding-bottom:84px}}
@media(prefers-reduced-motion:reduce){.service-dock,.service-dock a,.service-steps:after{transition:none}}
