/* Final refinements inside the approved graphite / off-white design system. */
.service-menu-toggle{display:flex;align-items:center;gap:7px;background:none;color:#c0c8cb;font-size:12px;min-height:44px;padding:0;white-space:nowrap}
.service-menu-toggle span{transition:transform .25s}.service-menu-toggle[aria-expanded=true]{color:white}.service-menu-toggle[aria-expanded=true] span{transform:rotate(180deg)}
.service-menu-panel{position:absolute;top:100%;inset-inline:var(--gutter);max-width:980px;margin-inline:auto;background:#171d1f;border:1px solid #45504f;padding:26px 32px 18px;box-shadow:0 22px 45px #0007}
.service-menu-groups{display:grid;grid-template-columns:1.35fr 1.2fr .8fr;gap:35px}.service-menu-groups p{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#adb6b1;margin-bottom:14px}
.main-nav .service-menu-link{display:block;white-space:normal;line-height:1.5;padding:7px 0;font-size:13px}.main-nav .service-menu-link:after{display:none}.service-menu-link span{display:inline-block;color:#9da7a1;transition:transform .25s}.service-menu-link:hover span{transform:translateX(3px);color:var(--red)}
.main-nav .service-menu-all{display:block;margin-top:19px;border-top:1px solid #3d4645;padding-top:16px;font-size:12px}.service-menu-all:after{display:none}
.service-menu-panel[hidden]{display:none}.service-menu-toggle:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.service-selector{margin:27px 0 16px;border-top:1px solid #adb3a9}.service-selector button{position:relative;display:flex;justify-content:space-between;gap:16px;width:100%;min-height:48px;padding:12px 0;text-align:start;background:none;border-bottom:1px solid #b7bcb2;font-size:14px;color:#536056}.service-selector button:after{content:'';position:absolute;bottom:-1px;inset-inline-start:0;width:100%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s}.service-selector button[aria-pressed=true]{color:#171e1b;font-weight:700}.service-selector button[aria-pressed=true]:after{transform:scaleX(1)}
.service-story.is-interactive .story-scenes{display:grid;min-height:650px;align-content:start;gap:0}.story-scene[hidden]{display:none}.service-story.is-interactive .story-scene figure img{height:355px}.service-story.is-interactive .story-caption{min-height:255px}.story-intro>.text-btn{margin-top:10px}
.service-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px 24px}.service-hero-actions .text-btn{font-size:12px;max-width:100%}.service-heading{min-width:0}.service-hero-image{overflow:hidden}.service-hero-image img{display:block}
.service-context{background:#1b2223;border-block:1px solid #404a48}.context-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.context-grid .headline{font-size:clamp(33px,3.8vw,55px);margin-top:24px;max-width:610px}.context-copy>p{font-size:clamp(18px,2vw,25px);line-height:1.6;color:#cbd0c9;max-width:640px}.context-copy>.text-btn{margin-top:24px}.scope-service{margin-top:30px;color:#58635b;font-size:16px}.visit-brief{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;padding-block:55px;border-bottom:1px solid #46504a}.visit-brief>div>p:not(.kicker){font-size:16px;line-height:1.85;margin-top:20px;color:#c2cdc5;max-width:700px}.visit-contact{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px}.visit-contact>span{font-size:10px;letter-spacing:.12em;color:#a7b5aa}.visit-contact>a{font-size:clamp(19px,2.1vw,29px)}.visit-contact .text-btn{font-size:13px}
.composition-maintenance .service-hero{grid-template-columns:1.2fr .8fr}.composition-maintenance .service-hero-image img{height:410px;clip-path:polygon(7% 0,100% 0,100% 94%,93% 100%,0 100%,0 7%)}
.composition-wheel .service-hero{grid-template-columns:.85fr 1.15fr}.composition-wheel .service-hero-image img{height:480px;object-position:58% center;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%,0 9%)}.composition-wheel .service-scope .service-editorial{grid-template-columns:1fr 1fr}
.composition-assessment .service-hero{grid-template-columns:1fr 1fr;align-items:start}.composition-assessment .service-heading{padding-top:36px}.composition-assessment .service-hero-image{border-inline-start:2px solid #b62b39;padding-inline-start:18px}.composition-assessment .service-context{background:#222a29}.composition-assessment .context-grid{grid-template-columns:.8fr 1.2fr}.composition-assessment .visit-brief{padding-block:65px}
.composition-technical .service-hero-image{position:relative}.composition-technical .service-hero-image:before{content:'';position:absolute;z-index:1;inset:17px;background:linear-gradient(90deg,transparent 49.8%,#96a99b20 50%,transparent 50.2%);pointer-events:none}.composition-technical .service-context .headline{font-size:clamp(32px,3.3vw,49px)}.composition-technical .service-context .context-copy{border-inline-start:1px solid #b32a37;padding-inline-start:30px}.composition-technical .service-process .process-list{max-width:100%}
.composition-care{background:#eeeee7;color:#17201b}.composition-care .breadcrumbs,.composition-care .breadcrumbs [aria-current]{color:#4d5b51}.composition-care .service-hero .page-lead,.composition-care .service-location,.composition-care .service-hero figcaption{color:#526054}.composition-care .service-hero .kicker{color:#48574c}.composition-care .service-hero .btn{background:#17201b;color:#f3f1e9}.composition-care .service-hero{grid-template-columns:1.12fr .88fr}.composition-care .service-hero-image img{height:520px;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 10%)}.composition-care .service-context,.composition-care .service-process,.composition-care .visit-brief,.composition-care .faq-section,.composition-care .related-section{background:#17201b;color:#f2f0e9}.composition-care .visit-brief,.composition-care .service-process,.composition-care .related-section{max-width:none;padding-inline:var(--gutter)}.composition-care .care-packages{padding-top:35px}
.package-picker{position:relative}.package-picker button{border-bottom-color:transparent!important;transition:background .3s,color .3s}.selection-line{position:absolute;pointer-events:none;bottom:0;left:0;height:2px;background:var(--red);width:var(--line-width,0);transform:translateX(var(--line-x,0px));transition:transform .4s,width .4s}
.package-panel{grid-template-columns:.75fr 1.2fr .75fr;gap:5%;min-height:420px}.package-photo{position:relative;margin:0;min-width:0;overflow:hidden;align-self:stretch}.package-photo img{width:100%;height:100%;min-height:310px;max-height:430px;object-fit:cover;filter:saturate(.55)}.package-photo figcaption{position:absolute;bottom:12px;inset-inline-end:12px;background:#171d1fcc;padding:5px;font-size:9px;color:white}.package-photo[data-care-image="0"] img{object-position:32% 65%}.package-photo[data-care-image="1"] img{object-position:75% 32%}.package-photo[data-care-image="3"] img{object-position:50% 45%}
.diag-tabs{position:relative}.diag-tab{border-bottom-color:transparent!important}.diag-panel{min-height:185px}.detail-picture:hover img{transform:none}.detail-picture img{transform:none}.detail-picture{--care-position:50% 35%}.detail-picture img{object-position:var(--care-position)}
.faq-row{overflow:hidden}.faq-row[open] summary{color:#f5f2e9;background:#ffffff04}.faq-row summary>span{display:inline-block;transition:transform .3s}.faq-row[open] summary>span{transform:rotate(45deg);color:var(--red)}
.process-list{--process-progress:0}.process-list:after{content:'';position:absolute;inset-inline-start:-1px;top:0;width:2px;height:100%;background:#d64b57;transform:scaleY(var(--process-progress));transform-origin:top;pointer-events:none}.process-list li.is-passed:before{background:#c4404d;border-color:#dc777e;transition:background .3s}
.workshop-photo{overflow:hidden}.workshop-photo img{transform:translateY(var(--workshop-shift,0px));transition:none}.workshop-photo:after{content:'';position:absolute;inset:0;border-block-end:1px solid #b23742;transform:scaleX(var(--workshop-line,0));transform-origin:left;pointer-events:none}.workshop-photo{position:relative}
.diag-image-wrap>img{transform:scale(var(--diagnostic-scale,1.025));transform-origin:center}.field input,.field select,.field textarea{transition:border-color .2s,background .2s,box-shadow .2s}.field :is(input,select,textarea):focus{box-shadow:inset 2px 0 0 #c33442;background:#ffffff07}.text-btn>span{display:inline-block;transition:transform .25s}.text-btn:hover>span{transform:translate(3px,-2px)}
.service-scope,.detail,.service-story{position:relative}.service-scope:before,.service-story:before{content:'';position:absolute;top:0;inset-inline:var(--gutter);height:1px;background:#747f7150}
html[dir=rtl] .service-selector button:after,html[dir=rtl] .workshop-photo:after{transform-origin:right}
@media(max-width:1240px){.service-menu-toggle{font-size:10px}.service-menu-panel{padding:24px}.service-menu-groups{gap:25px}}
@media(max-width:1190px){.mobile-nav .service-menu-toggle{font-size:19px;justify-content:space-between;width:100%;min-height:61px;border-bottom:1px solid var(--line)}.mobile-nav .service-menu-panel{position:static;border:0;border-bottom:1px solid #4a5350;box-shadow:none;margin:0;padding:20px 0;background:transparent;max-width:none}.mobile-nav .service-menu-groups{grid-template-columns:1fr 1fr}.mobile-nav .service-menu-link{font-size:15px;padding:10px 0;border:0;line-height:1.5}.mobile-nav .service-menu-all{font-size:15px}.mobile-nav .service-menu-groups p{margin-block:8px}.mobile-nav .service-menu-panel[hidden]{display:none}.service-menu-groups>div:last-child{grid-column:1/-1}.package-panel{grid-template-columns:.8fr 1.2fr;min-height:460px}.package-photo{grid-column:1/-1;height:240px}.package-photo img{min-height:0;max-height:none}.diag-panel{min-height:205px}}
@media(max-width:760px){
 .mobile-nav .service-menu-groups{grid-template-columns:1fr;gap:17px}.mobile-nav .service-menu-link{font-size:14px;min-height:44px;padding:11px 0}.mobile-nav .service-menu-panel{padding-inline:10px}.service-selector{margin-block:22px 16px}.service-selector button{min-height:48px;font-size:13px}.service-story.is-interactive .story-scenes{margin-top:26px;min-height:650px}.service-story.is-interactive .story-scene figure img{height:270px}.service-story.is-interactive .story-caption{min-height:330px}.story-intro{position:static}
 .service-hero-actions{gap:12px}.service-hero-actions .btn{font-size:12px}.context-grid,.composition-assessment .context-grid{grid-template-columns:1fr;gap:25px}.context-grid .headline,.composition-technical .service-context .headline{font-size:35px;margin-top:19px}.context-copy>p{font-size:18px}.context-copy>.text-btn{font-size:12px}.composition-technical .service-context .context-copy{padding-inline-start:18px}.visit-brief{grid-template-columns:1fr;gap:28px;padding-block:38px}.visit-brief>div>p:not(.kicker){font-size:14px}.visit-contact>a{font-size:22px}.visit-contact>span{font-size:9px}.scope-service{font-size:14px;margin-top:20px}
 .composition-maintenance .service-hero,.composition-wheel .service-hero,.composition-assessment .service-hero,.composition-care .service-hero{grid-template-columns:1fr}.composition-maintenance .service-hero-image img,.composition-wheel .service-hero-image img{height:290px}.composition-wheel .service-scope .service-editorial{grid-template-columns:1fr}.composition-assessment .service-heading{padding-top:0}.composition-assessment .service-hero-image img{height:340px}.composition-care .service-hero-image img{height:370px}.composition-care .care-packages{padding-top:15px}
 .package-picker{grid-template-columns:1fr 1fr}.package-picker button{min-height:54px;font-size:12px;padding:10px}.package-panel{display:flex;flex-direction:column;min-height:0;gap:25px}.package-panel[hidden]{display:none}.package-photo{height:245px;flex:none}.package-photo img{height:245px;min-height:0}.package-panel .clean-list{min-height:180px}.package-picker .selection-line{display:none}.package-picker button[aria-pressed=true]{box-shadow:inset 0 -2px 0 var(--red)}.diag-panel{min-height:215px}.diag-image-wrap>img,.workshop-photo img{transform:none}.detail-picture{height:340px}.service-process .section-heading{margin-bottom:32px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.process-list:after{transform:scaleY(1)}.workshop-photo img,.diag-image-wrap>img{transform:none!important}.workshop-photo:after{transform:scaleX(1)}.js-motion .reveal{opacity:1!important;transform:none!important;clip-path:none!important}}
@media(max-width:760px){.package-picker{grid-template-columns:1fr}.package-picker button{flex-direction:row;justify-content:space-between;text-align:start;padding-inline:16px;min-height:52px}}
