
.svc-blueprint{container-type:inline-size}
.service-page .svc-blueprint-node{font-size:clamp(11px,3.1cqw,16px);padding:clamp(7px,2cqw,10px) clamp(8px,2.5cqw,15px)}
.service-page .svc-blueprint-core>span{font-size:clamp(14px,4.7cqw,25px)}
.service-page .svc-blueprint-core strong{font-size:clamp(44px,23cqw,128px)}
.service-page .svc-blueprint-caption{font-size:clamp(10px,2.65cqw,14px)}
.svc-scene-drawing{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--blue);stroke-width:.3;overflow:visible;pointer-events:none}
.svc-scene-drawing>*{stroke-dasharray:1;stroke-dashoffset:0}
.svc-scene-drawing .scene-connectors{stroke-width:.5}
.svc-scene-drawing .scene-frame{stroke-width:.25}
@media(prefers-reduced-motion:no-preference) and (min-height:350px){
 html.scene-ready .hero-scroll-scene{height:calc(210svh - var(--header));background:var(--blue)}
 html.scene-ready .corporate-hero{position:sticky;top:var(--header);height:calc(100svh - var(--header));min-height:0;isolation:isolate;--panel-shift:28%;--panel-lift:24%;--panel-tilt:9deg;--panel-cut:29%;--panel-width:56%;--panel-overlap:-12%;--scene-photo-scale:1.32;--title-scale:1;--title-align:48px;--photo-inset:48%}
 html.scene-ready .hero-copy{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:53%;padding-block:35px}
 html.scene-ready .hero-copy h1{transform:scale(var(--title-scale,1));transform-origin:left center;transition:none;animation:none}
 html.scene-ready .hero-copy h1>span:nth-child(2){transform:translateX(calc(-1 * var(--title-align,0px)));transition:none;animation:none}
 html.scene-ready .hero-copy p,html.scene-ready .hero-copy .button{position:relative;z-index:3}
 html.scene-ready .hero-photos{inset:28px 0 28px var(--photo-inset,48%);height:auto;width:auto;margin:0;overflow:hidden}
 html.scene-ready .hero-photo{height:100%;width:var(--panel-width,50%);flex-shrink:0;clip-path:polygon(var(--panel-cut,0%) 0,100% 0,calc(100% - var(--panel-cut,0%)) 100%,0 100%);transform:translate(calc(-1 * var(--panel-shift,0%)),var(--panel-lift,0%)) rotate(calc(-1 * var(--panel-tilt,0deg)));transform-origin:center center;will-change:transform,clip-path}
 html.scene-ready .hero-photo--architecture{width:var(--panel-width,50%);margin-left:var(--panel-overlap,0%);clip-path:polygon(var(--panel-cut,0%) 0,100% 0,100% 100%,0 100%);transform:translate(var(--panel-shift,0%),calc(-1 * var(--panel-lift,0%))) rotate(var(--panel-tilt,0deg))}
 html.scene-ready .hero-photo img{transform:scale(var(--scene-photo-scale,1.12));height:100%;transition:none;animation:none;will-change:transform}
 html.scene-ready .hero-construction{width:100%;z-index:2;opacity:.7}
 html.scene-ready .service-page .svc-hero-grid{align-items:start}
 html.scene-ready .service-page .svc-motion-scene{height:calc(190svh - var(--header) - 64px);position:relative;min-width:0}
 html.scene-ready .service-page .svc-blueprint{position:sticky;top:calc(var(--header) + 32px);width:min(100%,calc(100svh - var(--header) - 64px));margin-inline:auto;isolation:isolate}
 html.scene-ready .service-page .svc-blueprint-node{will-change:transform;transition:none;animation:none}
 html.scene-ready .service-page .svc-blueprint-node--top{transform:translateX(-50%) translateY(var(--node-top-y,18cqw)) scale(var(--node-scale,1.12))}
 html.scene-ready .service-page .svc-blueprint-node--left{transform:translate(var(--node-left-x,calc(47cqw - 50%)),var(--node-left-y,-17cqw)) scale(var(--node-scale,1.12))}
 html.scene-ready .service-page .svc-blueprint-node--right{transform:translate(var(--node-right-x,calc(50% - 47cqw)),var(--node-right-y,12cqw)) scale(var(--node-scale,1.12))}
 html.scene-ready .service-page .svc-blueprint-core{transform:scale(var(--core-scale,.12));opacity:var(--core-opacity,0);background:var(--core-fill,var(--blue));color:var(--core-ink,#fff);transition:none;animation:none;will-change:transform,opacity}
 html.scene-ready .service-page .svc-blueprint-orbit{opacity:.12;transform:scale(var(--orbit-scale,.48));transition:none;animation:none}
 html.scene-ready .service-page .svc-blueprint-orbit--inner{transform:scale(var(--orbit-scale,.48))}
 html.scene-ready .svc-scene-drawing .scene-ring{stroke-dashoffset:var(--ring-offset,1);transform:rotate(-90deg);transform-origin:center}
 html.scene-ready .svc-scene-drawing .scene-connectors{stroke-dashoffset:var(--connector-offset,1)}
 html.scene-ready .svc-scene-drawing .scene-frame{stroke-dashoffset:var(--frame-offset,1);transform:scale(var(--frame-scale,.92));transform-origin:center}
 html.scene-ready .service-page .svc-blueprint-caption{opacity:var(--caption-opacity,0);transition:none}
}
@media(prefers-reduced-motion:no-preference) and (min-height:700px) and (min-width:761px){
 html.scene-ready .service-page .svc-hero-copy{position:sticky;top:calc(var(--header) + 32px)}
}
@media(prefers-reduced-motion:no-preference) and (min-height:350px) and (max-width:760px){
 html.scene-ready .hero-scroll-scene{height:calc(200svh - var(--header))}
 html.scene-ready .corporate-hero{display:flex;flex-direction:column;--panel-shift:24%;--panel-lift:18%;--title-align:20px;--photo-inset:0%}
 html.scene-ready .hero-copy{height:auto;width:100%;padding:24px var(--gutter) 20px;flex-shrink:0}
 html.scene-ready .hero-copy h1{font-size:clamp(36px,10.5vw,65px);line-height:1.13}
 html.scene-ready .hero-copy p{font-size:16px;line-height:1.6;margin-top:12px}
 html.scene-ready .hero-copy .button{margin-top:16px;min-height:44px;padding:11px 18px;font-size:14px}
 html.scene-ready .hero-photos{position:relative;inset:auto;flex:1;min-height:0;width:100%;height:auto;margin:0 0 14px}
 html.scene-ready .hero-construction{height:65%;top:auto;bottom:0}
 html.scene-ready .service-page .svc-hero-grid{display:grid;grid-template-columns:1fr;gap:42px}
 html.scene-ready .service-page .svc-hero-copy{position:static}
 html.scene-ready .service-page .svc-motion-scene{height:calc(190svh - var(--header) - 64px)}
}
@media(prefers-reduced-motion:no-preference) and (min-height:350px) and (max-height:600px) and (max-width:760px){
 html.scene-ready .hero-copy{padding:16px var(--gutter)}
 html.scene-ready .hero-copy h1{font-size:clamp(30px,9.8vw,48px)}
 html.scene-ready .hero-copy p{font-size:14px;line-height:1.5;margin-top:10px}
 html.scene-ready .hero-copy .button{margin-top:12px;min-height:40px;padding:9px 15px}
}
@media print{.hero-scroll-scene,.svc-motion-scene{height:auto!important}.corporate-hero,.svc-blueprint,.svc-hero-copy{position:static!important;height:auto!important}.svc-scene-drawing>*{stroke-dashoffset:0!important}}
@media(prefers-reduced-motion:no-preference) and (min-height:350px) and (max-height:600px) and (min-width:761px){
 html.scene-ready .hero-copy{padding-block:20px}
 html.scene-ready .hero-copy h1{font-size:clamp(42px,5vw,60px);line-height:1.13}
 html.scene-ready .hero-copy p{font-size:16px;line-height:1.4;margin-top:12px}
 html.scene-ready .hero-copy .button{margin-top:16px;min-height:40px;padding:10px 18px}
}

@media print{html .service-page .svc-blueprint-core{opacity:1!important;transform:none!important;background:#1854dc!important;color:#fff!important}html .service-page .svc-blueprint-caption{opacity:1!important}html .service-page .svc-blueprint-node--top{transform:translateX(-50%)!important}html .service-page .svc-blueprint-node--left,html .service-page .svc-blueprint-node--right{transform:none!important}}
