.chapter{position:relative;padding-block:clamp(4rem,10vw,9rem)}.chapter-head{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;align-items:start}.rail{position:relative;width:1.25rem;align-self:stretch;min-height:3rem}.rail:before{content:"";position:absolute;left:50%;top:1.6rem;bottom:-2rem;width:2px;translate:-50% 0;background:var(--line)}.rail-fill{position:absolute;left:50%;top:1.6rem;bottom:-2rem;width:2px;translate:-50% 0;background:linear-gradient(var(--g1),var(--g2));transform-origin:top;transform:scaleY(1)}.node{position:relative;z-index:1;width:1.25rem;height:1.25rem;margin-top:.55rem;border-radius:50%;border:4px solid var(--g1);background:var(--bg)}.chapter h2,.shift h2{font-size:var(--step-3);max-width:22ch}.chapter-intro{margin-top:1.25rem;color:var(--muted);font-size:var(--step-1);max-width:52ch;line-height:1.5}.shift{padding-block:calc(var(--header-h) + 1.5rem) 2.5rem;min-height:100svh;display:flex;align-items:center}.shift>.wrap{width:100%}.shift-lines{margin-top:clamp(2rem,5vw,4rem);display:grid;gap:clamp(1.5rem,3vw,2.5rem);padding-left:2.5rem}.shift-lines p{font:500 clamp(1.6rem,1.1rem + 2vw,3rem)/1.14 var(--f-display);letter-spacing:-.025em;max-width:28ch}.shift-lines .w{transition:color .2s}.anim .shift-lines .w{color:var(--dim)}.anim .shift-lines .w.on{color:var(--ink)}.services-track{list-style:none;margin-top:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:1rem;padding-left:2.5rem}.svc{position:relative;display:flex;flex-direction:column;gap:1rem;padding:1.6rem 1.5rem 1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:1.5rem;min-height:17rem}.svc-ico{width:3rem;height:3rem}.svc-ico path,.svc-ico circle,.svc-ico rect,.svc-ico line,.svc-ico polyline{fill:none;stroke:var(--accent);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.svc h3{font-size:var(--step-1);line-height:1.2;letter-spacing:-.01em}.svc p{color:var(--muted);font-size:var(--step--1);line-height:1.55}.svc a{margin-top:auto;font-weight:600;font-size:var(--step--1);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;color:var(--accent)}.svc a:after{content:"";position:absolute;inset:0;border-radius:inherit}.svc:hover{border-color:var(--accent)}.svc a span[aria-hidden]{transition:transform .2s}.svc:hover a span[aria-hidden]{transform:translate(3px)}@media(min-width:1024px){.h-scroll .services-pin{height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.h-scroll .services-track{display:flex;flex-wrap:nowrap;width:max-content;gap:1.25rem;padding-right:var(--gutter)}.h-scroll .svc{width:20rem;min-height:22rem}}.steps{margin-top:clamp(2.5rem,5vw,4rem);list-style:none;padding:0 0 0 2.5rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;counter-reset:s;position:relative}.steps:before{content:"";position:absolute;left:2.5rem;right:0;top:1.35rem;height:2px;background:var(--line)}.steps-fill{position:absolute;left:2.5rem;right:0;top:1.35rem;height:2px;background:linear-gradient(90deg,var(--g1),var(--g2));transform-origin:left;transform:scaleX(1)}.step{position:relative;counter-increment:s}.step-n{position:relative;z-index:1;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--bg);border:2px solid var(--accent);font:700 var(--step-0)/1 var(--f-display);color:var(--accent);transition:background-color .3s,color .3s}.step.on .step-n,.no-anim .step-n{background:var(--accent);color:var(--accent-ink)}.step h3{margin-top:1.25rem;font-size:var(--step-1)}.step p{margin-top:.6rem;color:var(--muted);font-size:var(--step--1)}@media(max-width:900px){.steps{grid-template-columns:1fr;gap:2rem}.steps:before,.steps-fill{left:calc(3.875rem - 1px);right:auto;top:0;bottom:0;width:2px;height:auto}.steps-fill{transform-origin:top}.step{display:grid;grid-template-columns:2.75rem 1fr;column-gap:1rem}.step h3{margin-top:.5rem}.step p{grid-column:2}}.case-grid{margin-top:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding-left:2.5rem}.case-text{font-size:var(--step-1);line-height:1.5}.case-points{margin:2rem 0 0;padding:0;list-style:none;display:grid;gap:1.25rem}.case-points h3{font-size:var(--step-0);font-family:var(--f-text);font-weight:700;letter-spacing:0}.case-points p{color:var(--muted);font-size:var(--step--1);margin-top:.25rem}.case-link{margin-top:2rem}.case-fig{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:2rem;padding:clamp(1.25rem,3vw,2.5rem)}.case-fig svg{width:100%;height:auto}.case-fig text{font:600 15px var(--f-text);fill:var(--ink)}.case-fig .muted{fill:var(--muted);font-weight:500;font-size:13px}.flow{fill:none;stroke:url(#g-case);stroke-width:6;stroke-linecap:round}.box{fill:var(--bg);stroke:var(--line);stroke-width:2}.wall{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:8 8}@media(max-width:900px){.case-grid{grid-template-columns:1fr}}.train{background:var(--surface);border-block:1px solid var(--line)}.train-grid{margin-top:2rem;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding-left:2.5rem;align-items:start}.train-text{font-size:var(--step-1);line-height:1.5}.train-list{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}.train-list li{display:flex;gap:.8rem;align-items:flex-start;font-weight:500}.train-list svg{flex:none;width:1.4rem;height:1.4rem;margin-top:.15rem}.train-list svg path{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.train .btn{margin-top:2rem}@media(max-width:900px){.train-grid{grid-template-columns:1fr}}.wm-grid{list-style:none;padding:0;margin-top:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);margin-left:2.5rem}.wm{position:relative;padding:1.75rem 1.5rem 1.75rem 0;border-bottom:1px solid var(--line)}.wm:not(:nth-child(3n+1)){padding-left:1.5rem;border-left:1px solid var(--line)}.wm h3{font-size:var(--step-1)}.wm p{margin-top:.5rem;color:var(--muted);font-size:var(--step--1)}.wm a{text-decoration:none}.wm a:after{content:"";position:absolute;inset:0}.wm:hover h3{color:var(--accent)}@media(max-width:900px){.wm-grid{grid-template-columns:1fr 1fr}.wm:not(:nth-child(3n+1)){padding-left:0;border-left:0}.wm:nth-child(2n){padding-left:1.25rem;border-left:1px solid var(--line)}}@media(max-width:560px){.wm-grid{grid-template-columns:1fr}.wm:nth-child(2n){padding-left:0;border-left:0}}.faq-list{margin-top:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem clamp(2rem,5vw,5rem);padding-left:2.5rem}.faq-list h3{font-size:var(--step-1)}.faq-list p{margin-top:.75rem;color:var(--muted)}@media(max-width:900px){.faq-list{grid-template-columns:1fr}}.contact{padding-block:clamp(5rem,12vw,10rem);overflow:hidden}.contact-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}.contact-art{max-width:26rem;justify-self:end;width:100%}.contact-art .net-line{stroke:url(#g-net2)}.contact-art .net-node{stroke:url(#g-net2)}.contact-art .net-dot{fill:url(#g-net2)}@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.contact-art{display:none}}.contact h2{font-size:var(--step-4);letter-spacing:-.035em;line-height:1;max-width:14ch}.contact-text{margin-top:1.5rem;font-size:var(--step-1);color:var(--muted);max-width:44ch}.contact-actions{margin-top:2.25rem;display:flex;flex-wrap:wrap;gap:.75rem}.nap{margin-top:3rem;display:grid;grid-template-columns:repeat(3,minmax(0,max-content));gap:2.5rem;font-style:normal}.nap span{display:block;font-size:var(--step--1);color:var(--muted)}.nap a{text-decoration:none}.nap a:hover{text-decoration:underline}@media(max-width:700px){.nap{grid-template-columns:1fr;gap:1.25rem}}.site-footer{border-top:1px solid var(--line);padding-block:3.5rem 2.5rem;font-size:var(--step--1)}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem}.foot-grid h2{font:700 var(--step--1)/1.2 var(--f-text);letter-spacing:0;color:var(--muted);margin-bottom:1rem}.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.foot-grid a{text-decoration:none}.foot-grid a:hover{text-decoration:underline}.foot-tag{margin-top:1rem;color:var(--muted);max-width:32ch}.foot-bottom{margin-top:3rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;color:var(--muted)}.site-footer .logo img{height:3rem}@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}@media(max-width:600px){.svc{min-height:0}.chapter-head{grid-template-columns:auto 1fr;gap:.9rem}.shift-lines,.services-track,.case-grid,.train-grid,.faq-list,.steps{padding-left:0}.wm-grid{margin-left:0}.steps:before,.steps-fill{left:1.375rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}
