/* MNK / Services   independent art direction, v34. Scoped to the Services route. */
body[data-route="services"]{background:#FFFFFF}
.svc34{--s-ink:#102B3B;--s-paper:#FFFFFF;--s-gold:#CAD3D9;--s-muted:#607684;--s-ease:cubic-bezier(.22,1,.36,1);font-family:Geist,'DM Sans',Arial,sans-serif;color:var(--s-ink);overflow:clip}
.svc34 *{box-sizing:border-box}
.svc34 h1,.svc34 h2,.svc34 h3{font-family:inherit;font-weight:450;letter-spacing:-.067em;line-height:1.03;margin:0}
.svc34 em{color:var(--s-gold)}
.svc34 p{line-height:1.5;margin:0}
.sv-wrap{width:min(1500px,calc(100% - var(--outer)*2));margin:0 auto}
.sv-tag{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:650}
/* Hero: a single full-bleed scene with typographic spatial hierarchy */
.sv-hero{height:max(690px,calc(100svh - 78px));min-height:600px;color:white;background:#102B3B;position:relative;isolation:isolate;overflow:hidden}
.sv-hero-media,.sv-hero-grain{position:absolute;inset:0;z-index:-1;overflow:hidden}
.sv-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 47%;transform:scale(1.125);transform-origin:center center;will-change:transform;filter:saturate(.75) contrast(1.04)}
.sv-hero-grain{background:linear-gradient(90deg,rgba(8,9,11,.73) 0%,rgba(8,9,11,.38) 57%,rgba(8,9,11,.14) 100%),linear-gradient(0deg,rgba(8,9,11,.7),transparent 48%,rgba(8,9,11,.22));pointer-events:none}
.sv-hero-shell{height:100%;width:min(1500px,calc(100% - var(--outer)*2));margin:auto;display:flex;flex-direction:column;justify-content:space-between;padding:28px 0 36px}
.sv-hero-meta{display:flex;justify-content:space-between;align-items:center;gap:25px;color:#F0F3F5;font-size:11px;letter-spacing:.09em;font-weight:550}
.sv-hero-titleblock{padding-top:7vh}
.sv-kicker{font-size:clamp(14px,1vw,17px);font-weight:500;display:block;margin-bottom:26px;color:#F0F3F5}
.sv-hero h1{font-size:clamp(66px,7.4vw,128px);letter-spacing:-.078em;max-width:1350px;line-height:.97;text-wrap:balance}
.sv-hero-line{display:block;overflow:hidden;white-space:nowrap}
.sv-period{color:var(--s-gold)}
.sv-hero-foot{display:flex;align-items:end;justify-content:space-between;gap:40px}
.sv-hero-foot p{max-width:430px;font-size:clamp(16px,1.3vw,21px);letter-spacing:-.025em;color:#F0F3F5}
.sv-hero-jump{display:flex;gap:24px;align-items:center;font-size:13px;font-weight:600}
.sv-circle-arrow{width:78px;height:78px;border:1px solid #FFFFFF95;border-radius:50%;display:grid;place-items:center;font-size:34px;font-weight:350;transition:color .45s var(--s-ease),background .45s var(--s-ease),transform .45s var(--s-ease)}
.sv-hero-jump:hover .sv-circle-arrow,.sv-hero-jump:focus-visible .sv-circle-arrow{background:white;color:#102B3B;transform:translateY(7px)}
.sv-hero-line{animation:sv-rise 1s var(--s-ease) both}.sv-hero-line:nth-child(2){animation-delay:.12s}@keyframes sv-rise{from{opacity:0;transform:translateY(26%)}to{opacity:1;transform:none}}
/* Editorial: an information hierarchy, not a card grid */
.sv-editorial{background:var(--s-paper);padding:clamp(110px,12vw,205px) 0 0}
.sv-grid-pad{display:grid;grid-template-columns:1fr 1.85fr;gap:5vw;width:min(1500px,calc(100% - var(--outer)*2));margin:auto;padding-bottom:clamp(74px,9vw,155px)}
.sv-aside-label{font-size:12px;font-weight:650;letter-spacing:.06em;display:flex;align-items:start;gap:12px;padding-top:17px}
.sv-aside-icon{font-size:19px;line-height:.8;font-weight:400;color:var(--s-gold)}
.sv-editorial h2{font-size:clamp(51px,5.1vw,90px);max-width:1000px;margin-bottom:30px}
.sv-editorial p{font-size:clamp(17px,1.32vw,21px);color:#607684;max-width:680px;line-height:1.5}
.sv-editorial-image{height:clamp(310px,39vw,620px);position:relative;overflow:hidden;background:#F0F3F5}
.sv-editorial-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.09);transition:transform 1.1s var(--s-ease)}
.sv-editorial-image.is-seen img{transform:scale(1)}
.sv-editorial-image:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(8,9,11,.55))}
.sv-editorial-image-note{position:absolute;bottom:32px;left:var(--outer);z-index:1;color:white;font-size:11px;letter-spacing:.1em;font-weight:650}
/* The only full service index on the page */
.sv-directory{background:#FFFFFF;padding:clamp(105px,11vw,180px) 0 clamp(110px,12vw,195px)}
.sv-directory-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:clamp(60px,7vw,105px)}
.sv-directory-heading h2{font-size:clamp(53px,5.5vw,91px);margin-top:20px}
.sv-directory-heading>p{font-size:17px;max-width:280px;color:var(--s-muted)}
.sv-directory-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.94fr);gap:clamp(44px,6.5vw,110px);align-items:start}
.sv-service-list{border-top:1px solid #DCE4EA}
.sv-service{display:grid;grid-template-columns:30px 1fr 37px;gap:clamp(15px,2vw,28px);align-items:start;padding:24px 0 24px;border-bottom:1px solid #DCE4EA;min-height:94px;color:#607684;transition:color .3s var(--s-ease),padding-left .4s var(--s-ease);position:relative}
.sv-service:before{content:"";height:1px;background:var(--s-gold);position:absolute;bottom:-1px;left:0;right:0;transform-origin:0 50%;transform:scaleX(0);transition:transform .6s var(--s-ease)}
.sv-service.active:before,.sv-service:hover:before,.sv-service:focus-visible:before{transform:scaleX(1)}
.sv-service.active,.sv-service:hover,.sv-service:focus-visible{color:var(--s-ink);padding-left:6px}
.sv-num{font-size:11px;letter-spacing:.05em;color:#607684;font-weight:600;padding-top:11px}
.sv-service-main{display:block}.sv-service-main strong{font-weight:480;display:block;letter-spacing:-.047em;font-size:clamp(25px,2.35vw,39px);line-height:1.12}
.sv-description{color:#607684;font-size:14px;display:block;max-height:0;opacity:0;overflow:hidden;transition:max-height .5s var(--s-ease),opacity .4s,padding .4s;line-height:1.5}
.sv-service.active .sv-description,.sv-service:hover .sv-description,.sv-service:focus-visible .sv-description{max-height:80px;opacity:1;padding-top:12px}
.sv-service-arrow{font-size:27px;font-weight:350;justify-self:end;transition:transform .3s var(--s-ease)}
.sv-service:hover .sv-service-arrow,.sv-service:focus-visible .sv-service-arrow{transform:translate(4px,-4px)}
.sv-preview-pin{position:sticky;top:calc(78px + 28px);padding-bottom:30px}
.sv-preview{height:min(65svh,655px);min-height:430px;position:relative;overflow:hidden;background:#DCE4EA;isolation:isolate}
.sv-preview>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sv-preview-front{clip-path:inset(0 0 0 0);transform:scale(1.03)}
.sv-preview-front.sv-wipe-in{animation:sv-photo-wipe .65s var(--s-ease) both}@keyframes sv-photo-wipe{from{clip-path:inset(0 100% 0 0);transform:scale(1.085)}to{clip-path:inset(0);transform:scale(1.03)}}
.sv-preview-vignette{position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(8,9,11,.7));pointer-events:none}
.sv-preview-caption{position:absolute;left:32px;bottom:33px;right:32px;color:white;display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:14px}
.sv-preview-count{font-size:11px;font-weight:600;white-space:nowrap}.sv-preview-title{max-width:210px;text-align:right}
.sv-preview-footer{display:flex;justify-content:space-between;margin-top:17px;gap:10px;color:#607684;letter-spacing:.09em;font-size:10px;font-weight:600}
/* Horizontal narrative gallery with scroll snap / no wheel hijacking */
.sv-flow{background:#FFFFFF;padding:clamp(115px,12vw,185px) 0 clamp(95px,10vw,150px);overflow:hidden}
.sv-flow-intro{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:start;margin-bottom:clamp(56px,7vw,110px)}
.sv-flow-intro .sv-tag{grid-column:1/-1}
.sv-flow-intro h2{font-size:clamp(58px,6.2vw,104px)}
.sv-flow-intro p{font-size:20px;max-width:400px;color:#607684;align-self:end;margin-bottom:6px}
.sv-flow-frame{overflow:hidden;padding-inline:var(--outer)}
.sv-flow-rail{display:flex;overflow-x:auto;gap:17px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;outline-offset:3px}
.sv-flow-rail::-webkit-scrollbar{display:none}
.sv-flow-scene{position:relative;flex:0 0 78%;height:clamp(440px,62svh,750px);overflow:hidden;scroll-snap-align:start;background:#102B3B;color:white;isolation:isolate}
.sv-flow-scene img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;transform:scale(1.04);transition:transform 1s var(--s-ease);filter:saturate(.88)}
.sv-flow-scene.sv-flow-active img{transform:scale(1)}
.sv-flow-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,11,.05) 5%,rgba(8,9,11,.16) 44%,rgba(8,9,11,.78) 100%)}
.sv-flow-scene-copy{position:absolute;left:clamp(30px,5vw,86px);right:30px;bottom:clamp(35px,5vw,82px)}
.sv-flow-scene-copy>span{font-size:11px;letter-spacing:.1em;font-weight:650}
.sv-flow-scene-copy h3{font-size:clamp(62px,6.6vw,116px);margin:22px 0 12px}
.sv-flow-scene-copy p{font-size:clamp(16px,1.28vw,21px);max-width:500px;color:#FFFFFF}
.sv-flow-controls{display:flex;align-items:center;justify-content:space-between;margin-top:26px}
.sv-flow-controls>span{font-size:12px;font-weight:600;color:#607684;display:flex;align-items:center;gap:12px}
.sv-flow-progress{width:min(20vw,260px);height:2px;background:#DCE4EA;display:inline-block;position:relative}
.sv-flow-progress i{height:100%;display:block;width:33.333%;background:#102B3B;transition:transform .45s var(--s-ease);transform-origin:left}
.sv-flow-controls>div{display:flex;gap:10px}
.sv-flow-controls button{border:1px solid #DCE4EA;background:transparent;color:#102B3B;border-radius:50%;width:56px;height:56px;display:grid;place-items:center;font-size:24px;transition:background .26s,color .26s,transform .26s}
.sv-flow-controls button:hover:not(:disabled){background:#102B3B;color:#FFFFFF;transform:translateY(-2px)}
.sv-flow-controls button:disabled{opacity:.3;cursor:default}
/* Intent navigator: a question, not another service index */
.sv-find{background:#F0F3F5;padding:clamp(118px,12vw,195px) 0}
.sv-find-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,7vw,120px);align-items:start}
.sv-find-copy{position:sticky;top:115px}.sv-find h2{font-size:clamp(58px,6vw,100px);margin:28px 0 30px}.sv-find-copy>p{font-size:18px;color:#607684;max-width:490px}
.sv-stage-tabs{margin-top:clamp(50px,5vw,85px);border-top:1px solid #DCE4EA}
.sv-stage-tab{border:0;border-bottom:1px solid #DCE4EA;background:none;width:100%;padding:21px 0;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:clamp(18px,1.6vw,25px);letter-spacing:-.04em;color:#607684;transition:color .25s,padding .3s var(--s-ease)}
.sv-stage-tab span{font-size:24px;transition:transform .25s}
.sv-stage-tab[aria-selected="true"],.sv-stage-tab:hover{color:#102B3B;padding-left:8px}
.sv-stage-tab:hover span{transform:translate(4px,-4px)}
.sv-find-result{min-width:0}.sv-find-photo{height:clamp(275px,25vw,420px);overflow:hidden;background:#A6B5BF}
.sv-find-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--s-ease),opacity .4s var(--s-ease);transform:scale(1.03)}
.sv-find-photo img.sv-swap{animation:sv-content-reveal .54s var(--s-ease) both}@keyframes sv-content-reveal{from{opacity:.3;transform:scale(1.07) translateY(10px)}to{opacity:1;transform:scale(1.03)}}
.sv-find-reco{padding:37px 0 0}.sv-find-statement{font-size:clamp(22px,2.3vw,35px);line-height:1.24!important;letter-spacing:-.045em;max-width:600px;margin:18px 0 25px!important}
.sv-find-links{border-top:1px solid #DCE4EA}.sv-find-links a{border-bottom:1px solid #DCE4EA;padding:15px 0;display:flex;justify-content:space-between;font-size:15px;font-weight:550;gap:12px;transition:padding .3s var(--s-ease),color .3s}.sv-find-links a:hover{padding-left:6px;color:#CAD3D9}
.sv-find-links a span{font-size:19px}
/* Ending as a visual handoff, not repeated empty CTA card */
.sv-close{height:clamp(680px,89svh,1000px);color:#FFFFFF;background:#102B3B;position:relative;isolation:isolate;overflow:hidden}
.sv-close-image{position:absolute;z-index:-1;top:0;right:0;height:100%;width:64%;overflow:hidden}
.sv-close-image img{height:100%;width:100%;object-fit:cover;object-position:center;filter:saturate(.8);transform:scale(1.08);transition:transform 1.2s var(--s-ease)}
.sv-close.sv-seen .sv-close-image img{transform:scale(1)}
.sv-close:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102B3B 0%,#102B3BED 39%,#102B3BB0 66%,#102B3B40 100%);z-index:-1}
.sv-close-content{height:100%;display:flex;flex-direction:column;align-items:start;justify-content:center;padding-block:70px}
.sv-close h2{font-size:clamp(76px,8.2vw,145px);letter-spacing:-.078em;margin:40px 0 28px;max-width:1100px}
.sv-close p{font-size:clamp(17px,1.5vw,23px);max-width:520px;color:#F0F3F5;margin-bottom:40px}
.sv-close-action{display:flex;align-items:center;justify-content:space-between;gap:50px;min-width:min(100%,365px);padding:16px 0;border-bottom:1px solid #DCE4EA;font-size:17px;font-weight:550}
.sv-close-action span:last-child{font-size:26px;transition:transform .3s var(--s-ease)}
.sv-close-action:hover span:last-child{transform:translate(5px,-5px)}
/* Section reveals: event-driven, one-time, not repeated word-by-word */
.sv-reveal:not(.sv-seen) .sv-editorial-body h2,.sv-reveal:not(.sv-seen) .sv-editorial-body p{opacity:0;transform:translateY(22px)}
.sv-editorial-body h2,.sv-editorial-body p{transition:opacity .8s var(--s-ease),transform .8s var(--s-ease)}
.sv-editorial-body p{transition-delay:.12s}
@media(max-width:1120px){.sv-directory-layout{gap:42px}.sv-service-main strong{font-size:30px}.sv-flow-scene{flex-basis:84%}.sv-find-layout{gap:45px}}
@media(max-width:800px){
.sv-hero{height:calc(92svh - 67px);min-height:590px}.sv-hero-shell{padding:22px 0 30px}.sv-hero-meta span:last-child{display:none}.sv-hero h1{font-size:clamp(56px,10.5vw,89px)}.sv-hero-line{white-space:normal}.sv-hero-titleblock{padding-top:0}.sv-hero-foot p{max-width:290px}.sv-circle-arrow{width:54px;height:54px;font-size:27px}.sv-hero-jump>span:first-child{display:none}
.sv-grid-pad{grid-template-columns:1fr;gap:30px}.sv-editorial{padding-top:95px}.sv-editorial h2{font-size:clamp(45px,7.5vw,67px)}.sv-editorial p{font-size:17px}.sv-editorial-image{height:350px}.sv-directory{padding-block:90px}.sv-directory-heading{display:block;margin-bottom:50px}.sv-directory-heading>p{margin-top:24px}.sv-directory-layout{grid-template-columns:1fr;gap:35px}.sv-preview-pin{position:relative;top:auto;grid-row:1;padding-bottom:0}.sv-preview{height:370px;min-height:0}.sv-service-list{grid-row:2}.sv-preview-footer{display:none}
.sv-flow{padding-block:85px}.sv-flow-intro{display:block}.sv-flow-intro h2{font-size:clamp(52px,8vw,75px);margin:20px 0}.sv-flow-intro p{font-size:17px}.sv-flow-scene{flex-basis:91%;height:550px}.sv-flow-scene-copy h3{font-size:clamp(54px,8vw,79px)}
.sv-find{padding-block:95px}.sv-find-layout{grid-template-columns:1fr}.sv-find-copy{position:static}.sv-find h2{font-size:clamp(58px,8vw,82px)}.sv-stage-tabs{margin-top:40px}.sv-find-result{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:26px}.sv-find-photo{height:100%;min-height:280px}.sv-find-reco{padding:0}.sv-find-statement{font-size:26px}.sv-close{height:700px}.sv-close h2{font-size:clamp(65px,9.4vw,100px)}
}
@media(max-width:560px){
.sv-hero{min-height:580px}.sv-hero-media img{object-position:59% center}.sv-hero-grain{background:linear-gradient(90deg,rgba(8,9,11,.72),rgba(8,9,11,.30)),linear-gradient(0deg,rgba(8,9,11,.74),transparent 65%)}.sv-hero h1{font-size:clamp(48px,12.5vw,72px);line-height:1}.sv-kicker{font-size:12px;margin-bottom:17px}.sv-hero-foot p{font-size:14px;max-width:230px}.sv-editorial-image{height:260px}.sv-editorial-image-note{left:20px;bottom:20px;font-size:9px}.sv-directory-heading h2{font-size:clamp(45px,10vw,61px)}.sv-service{grid-template-columns:22px 1fr 25px;gap:10px;min-height:84px;padding:21px 0}.sv-service-main strong{font-size:clamp(23px,6vw,31px)}.sv-num{padding-top:7px}.sv-service-arrow{font-size:22px}.sv-description{font-size:12px}.sv-preview{height:290px}.sv-preview-caption{left:20px;bottom:20px;right:20px}.sv-preview-title{font-size:12px}.sv-flow-frame{padding-inline:20px}.sv-flow-rail{gap:12px}.sv-flow-scene{flex-basis:96%;height:480px}.sv-flow-scene-copy{left:24px;bottom:35px}.sv-flow-scene-copy h3{font-size:50px}.sv-flow-scene-copy p{font-size:14px}.sv-flow-controls button{width:48px;height:48px}.sv-find-layout{display:block}.sv-find h2{font-size:55px}.sv-find-copy>p{font-size:16px}.sv-stage-tab{font-size:20px}.sv-find-result{display:block;margin-top:38px}.sv-find-photo{height:240px;min-height:0}.sv-find-reco{padding-top:29px}.sv-find-statement{font-size:25px}.sv-close{height:650px}.sv-close-image{width:100%;opacity:.55}.sv-close:after{background:linear-gradient(90deg,#102B3BC7,#102B3BB3),linear-gradient(0deg,#102B3BE8,transparent 80%)}.sv-close h2{font-size:clamp(56px,11.5vw,72px)}.sv-close p{font-size:16px}.sv-close-action{min-width:0;width:min(100%,380px)}
}
@media(prefers-reduced-motion:reduce){.svc34 *, .svc34 *:before,.svc34 *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.sv-hero-media img{will-change:auto;transform:none!important}.sv-hero-line{opacity:1!important;transform:none!important}.sv-reveal .sv-editorial-body h2,.sv-reveal .sv-editorial-body p{opacity:1!important;transform:none!important}.sv-flow-scene img{transform:none}}
