/* Original light motion chapter. Motion runs only during explicit preview playback. */
.service-film{background:#f5f8fa;border-block:1px solid #e2eaf0;padding-block:72px}.sm-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:80px;margin-bottom:32px}.sm-heading .eyebrow{font-size:10px;margin-bottom:17px}.sm-heading h2{font-size:clamp(32px,3.2vw,45px);line-height:1.13;max-width:650px;color:#244b61}.sm-heading>p{font-size:15px;line-height:1.7;max-width:400px;justify-self:end}.sm-preview{border:1px solid #ccdde7;background:#fff;box-shadow:0 20px 55px #254c6208}.sm-stage{position:relative;aspect-ratio:16/9;overflow:hidden;isolation:isolate;background:#f7fafc}.sm-stage-header{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 28px;font-size:10px;line-height:1.4;letter-spacing:.07em;color:#496f85}.sm-stage-header>span:last-child{font-size:9px;letter-spacing:.1em;color:#78909e}.sm-scene{position:absolute;inset:0}.sm-scene-label{position:absolute;bottom:22px;left:28px;font-size:11px;line-height:1.5;color:#315d76;background:#ffffffe8;border:1px solid #dce8ef;padding:7px 12px}.sm-diagram{display:block;width:100%;height:100%}.sm-diagram path,.sm-diagram rect,.sm-diagram circle,.sm-diagram ellipse{vector-effect:non-scaling-stroke}.sm-diagram g{stroke-linejoin:round;stroke-linecap:round}.sm-ground-shadow,.sm-equipment-shadow{fill:#bad2df;opacity:.2}.sm-land{fill:#f2f8fb;stroke:#86abc0;stroke-width:1.1}.sm-land-edge{fill:#dae9f1;stroke:#96b6c9;stroke-width:1}.sm-terrain-line{fill:none;stroke:#bed1df;stroke-width:1}.sm-piles path{fill:#d2e5f0;stroke:#5593b5;stroke-width:1.2}.sm-piles path:nth-child(2){fill:#b7d4e5}.sm-piles path:nth-child(3){fill:#e5eff5}.sm-acquisition{fill:none;stroke:#438db5;stroke-width:1;stroke-dasharray:6 9;opacity:.9}.sm-moving-node{fill:#2a86b7;stroke:#fff;stroke-width:3;stroke-dasharray:none}.sm-measure-lines{fill:none;stroke:#147bab;stroke-width:1.4}.sm-focus{fill:#1e8acc09;stroke:#1e8acc;stroke-width:1;stroke-dasharray:3 5;transform-box:fill-box;transform-origin:center}.sm-paper{fill:#fff;stroke:#93b6ca;stroke-width:1.1}.sm-paper>path{stroke:#779eb5}.sm-paper>circle{fill:#e5f1f7;stroke:#77acc8}.sm-paper .sm-check{fill:none;stroke:#1e8acc;stroke-width:1.5}.sm-connection{fill:none;stroke:#1e8acc;stroke-width:1.1;stroke-dasharray:4 7}.sm-buildings{fill:#e4eef4;stroke:#85a9bd;stroke-width:1.1}.sm-buildings>path:first-child{fill:#fafcfd}.sm-sensor-nodes{fill:#2589bc;stroke:#fff;stroke-width:3}.sm-chart{fill:none;stroke:#2589bc!important;stroke-width:1.5}.sm-magnetic{fill:#b8daec27;stroke:#448fb8;stroke-width:1.1}.sm-magnetic>ellipse{fill:none;stroke:#74b4d5}.sm-interpretation{fill:none;stroke:#277fab;stroke-width:1.1}.sm-pointcloud{fill:#3b8bb6;opacity:.75}.sm-pointcloud>circle:nth-child(4n){fill:#b0cfde}.sm-layers{fill:#d9eaf450;stroke:#5d9cbf;stroke-width:1.2}.sm-layers>path:first-child{fill:#b5d5e78c}.sm-layers>path:last-child{fill:#f5fafe75}.sm-asset{fill:#e1eef6;stroke:#80a7bd;stroke-width:1.1}.sm-asset>path:first-child{fill:#fafcfd}.sm-pin{fill:#1e8acc;stroke:#fff;stroke-width:3}.sm-pit{fill:#d3e6f1;stroke:#5599bd;stroke-width:1.2}.sm-road{fill:none;stroke:#b0c7d5;stroke-width:7}.sm-revisit{fill:#a7d4e817;stroke:#1e8acc;stroke-width:1.2;stroke-dasharray:5 6}.sm-equipment{fill:#e5f0f6;stroke:#82aabf;stroke-width:1.2}.sm-equipment>rect{fill:#f4f9fc}.sm-equipment>circle{fill:#bfdceb;stroke:#5495b6}.sm-checklist{fill:#e4f2f9;stroke:#4c94ba;stroke-width:1.3}.sm-checklist>path{fill:none}.sm-calendar{stroke:#7eabc4!important;stroke-width:4}.sm-governance{fill:#f3f9fc;stroke:#679bb8;stroke-width:1.3}.sm-governance>path:last-child{fill:none;stroke:#96bbcf}.sm-water{fill:none;stroke:#8dc4df;stroke-width:8;opacity:.7}.sm-question{fill:#f9fcfe;stroke:#91b9ce;stroke-width:1}.sm-question text{font:54px Inter,Arial,sans-serif;fill:#438aac;stroke:none}.sm-water-notes{fill:#f9fcfe;stroke:#78a8c1;stroke-width:1.2}.sm-corner-mark{fill:none;stroke:#b6cedc;stroke-width:1;opacity:.7}
.sm-controls{display:flex;align-items:stretch;border-block:1px solid #dbe6ed;min-height:61px;background:#fafdfe}.sm-play{border:0;border-right:1px solid #dbe6ed;padding:14px 26px;display:flex;justify-content:center;align-items:center;gap:10px;background:#edf5fa;color:#1c648e;font-size:12px;min-width:181px;min-height:50px}.sm-play svg{width:18px;height:18px;fill:#2279a9}.sm-pause-icon{display:none}.sm-play[aria-pressed=true] .sm-play-icon{display:none}.sm-play[aria-pressed=true] .sm-pause-icon{display:block}.sm-play:disabled{background:#f4f7f9;color:#6c808c;opacity:1}.sm-play:disabled svg{opacity:.5}.sm-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));flex:1;min-width:0}.sm-chapters button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:50px;padding:13px 12px;border:0;border-right:1px solid #e2ebf0;background:transparent;font-size:12px;color:#6b818e;position:relative}.sm-chapters button:last-child{border-right:0}.sm-chapters button>span{font-size:9px;color:#88a1af}.sm-chapters button[aria-pressed=true]{color:#115e8a;background:#f0f7fb}.sm-chapters button[aria-pressed=true]:after{content:'';position:absolute;bottom:0;left:22%;right:22%;height:2px;background:#1e8acc}.sm-story{padding:28px 32px 14px;min-height:170px}.sm-stage-index{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#6c91a5;margin-bottom:10px}.sm-story h3{font-size:25px;line-height:1.2;letter-spacing:-.035em;color:#29566f}.sm-story h3+p{font-size:14px;line-height:1.75;margin-top:12px;max-width:850px}.sm-play-state,.sm-no-script{font-size:10px;line-height:1.6;padding:0 32px 23px;color:#7b919f;margin:0!important}.sm-disclosure{display:flex;justify-content:space-between;gap:25px;margin:18px 0 0}.sm-disclosure p,.sm-disclosure>span{font-size:10px;line-height:1.65;color:#7a8e9a}.sm-disclosure p{max-width:660px}.sm-disclosure>span{text-align:right;max-width:300px}.sm-transcript{border-top:1px solid #d6e3eb;margin-top:24px}.sm-transcript summary{list-style:none;cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;font-size:12px;color:#326c8e}.sm-transcript summary::-webkit-details-marker{display:none}.sm-transcript summary:after{content:'+';font-size:20px;font-weight:300;color:#6193ac}.sm-transcript[open] summary:after{content:'−'}.sm-transcript ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:15px 0 0;margin:0;list-style:none;counter-reset:workflow}.sm-transcript li{counter-increment:workflow;border-top:1px solid #d8e4ec;padding-top:18px}.sm-transcript li:before{content:'0' counter(workflow);font-size:10px;display:block;color:#7b9fb3;margin-bottom:13px}.sm-transcript li h3{font-size:20px;line-height:1.3;letter-spacing:-.025em}.sm-transcript li p{font-size:13px;line-height:1.7;margin-top:13px}.sm-transcript li>span{display:block;font-size:10px;color:#5685a0;margin-top:16px}.sm-transcript-body{max-width:860px;padding:8px 0 12px}.sm-transcript-body p{font-size:14px;line-height:1.8;margin-top:16px}.sm-film-player{aspect-ratio:16/9;border:1px solid #ccdde7;background:#edf4f8;overflow:hidden}.sm-film-player video{display:block;width:100%;height:100%;object-fit:contain}
.sm-preview.is-playing .sm-acquisition{animation:sm-lines 6s linear infinite}.sm-preview.is-playing .sm-focus{animation:sm-focus 6s ease-in-out infinite}.sm-preview.is-playing .sm-connection{animation:sm-lines 7s linear infinite}.sm-preview.is-playing .sm-sensor-nodes{animation:sm-opacity 6s ease-in-out infinite}.sm-preview.is-playing .sm-pointcloud{animation:sm-opacity 6s ease-in-out infinite}.sm-preview.is-playing .sm-layers>path:last-child{animation:sm-layer 6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.sm-preview.is-playing .sm-water{animation:sm-water 6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.sm-preview.is-playing .sm-moving-node{animation:sm-opacity 3s ease-in-out infinite}.sm-preview.is-playing .sm-checklist{animation:sm-opacity 6s ease-in-out infinite}.sm-preview.is-playing .sm-chart{animation:sm-opacity 6s ease-in-out infinite}
@keyframes sm-lines{to{stroke-dashoffset:-60}}@keyframes sm-focus{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.07)}}@keyframes sm-opacity{0%,100%{opacity:.65}50%{opacity:1}}@keyframes sm-layer{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes sm-water{0%,100%{transform:translateY(0);opacity:.65}50%{transform:translateY(-4px);opacity:.9}}
@media(max-width:960px){.sm-heading{gap:40px}.sm-heading h2{font-size:36px}.sm-heading>p{font-size:14px}.sm-play{min-width:160px;padding-inline:18px}.sm-chapters button{font-size:11px;gap:7px}}
@media(max-width:760px){.service-film{padding-block:46px}.sm-heading{grid-template-columns:1fr;gap:17px;margin-bottom:25px}.sm-heading h2{font-size:32px;max-width:450px}.sm-heading .eyebrow{font-size:9px;margin-bottom:14px}.sm-heading>p{font-size:14px;justify-self:start;max-width:500px;line-height:1.7}.sm-stage-header{padding:12px 13px;font-size:8px;letter-spacing:.025em;gap:8px}.sm-stage-header>span:last-child{font-size:6px;letter-spacing:.03em}.sm-scene-label{left:12px;bottom:10px;font-size:8px;padding:4px 7px;max-width:calc(100% - 24px)}.sm-controls{display:grid;grid-template-columns:1fr;min-height:0}.sm-play{border-right:0;border-bottom:1px solid #dbe6ed;min-height:46px;padding:11px 14px;font-size:12px;gap:9px;min-width:0}.sm-play svg{width:16px;height:16px}.sm-chapters{min-height:50px}.sm-chapters button{font-size:11px;padding:12px 4px;gap:6px;min-height:50px}.sm-chapters button>span{font-size:8px}.sm-chapters button[aria-pressed=true]:after{left:15%;right:15%}.sm-story{min-height:0;padding:21px 19px 11px}.sm-stage-index{font-size:8px;margin-bottom:9px}.sm-story h3{font-size:23px;line-height:1.2}.sm-story h3+p{font-size:14px;line-height:1.7;margin-top:12px}.sm-play-state,.sm-no-script{padding:0 19px 20px;font-size:10px}.sm-disclosure{display:block;margin-top:14px}.sm-disclosure p,.sm-disclosure>span{font-size:10px;line-height:1.7}.sm-disclosure>span{display:block;text-align:left;margin-top:7px;max-width:none}.sm-transcript{margin-top:19px}.sm-transcript summary{font-size:12px;min-height:48px}.sm-transcript ol{grid-template-columns:1fr;gap:21px;padding-top:6px}.sm-transcript li{padding-top:17px}.sm-transcript li:before{margin-bottom:10px}.sm-transcript li h3{font-size:21px}.sm-transcript li p{font-size:14px;margin-top:11px}.sm-transcript li>span{margin-top:11px}.sm-transcript-body p{font-size:14px}}
@media(max-width:360px){.sm-heading h2{font-size:29px}.sm-chapters button{font-size:10px;gap:4px}.sm-chapters button>span{font-size:7px}.sm-stage-header>span:last-child{display:none}.sm-story{padding-inline:16px}.sm-story h3{font-size:22px}.sm-play-state,.sm-no-script{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.service-film *{animation:none!important;transition:none!important}}
.motion-paused .service-film *{animation:none!important;transition:none!important}
.sm-story{display:grid;align-content:center}
.sm-story>[data-sm-panel]{grid-area:1/1;align-self:start}
.sm-story>[data-sm-panel][hidden]{display:block!important;visibility:hidden;pointer-events:none}
@media(min-width:1100px){
 .sm-preview{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}
 .sm-stage{grid-column:1;grid-row:1}
 .sm-controls{grid-column:1;grid-row:2;border-bottom:0;min-height:60px}
 .sm-play{min-width:165px;padding-inline:20px}
 .sm-chapters button{font-size:11px;gap:7px;padding-inline:8px}
 .sm-story{grid-column:2;grid-row:1/3;min-height:0;border-left:1px solid #dbe6ed;padding:30px;align-self:stretch}
 .sm-story h3{font-size:27px;line-height:1.2}
 .sm-story h3+p{font-size:14px;line-height:1.8;margin-top:16px}
 .sm-play-state,.sm-no-script{grid-column:1/-1;grid-row:3;border-top:1px solid #dbe6ed;padding:15px 25px}
 .sm-stage-header{padding:19px 22px;font-size:9px}
 .sm-stage-header>span:last-child{font-size:8px}
 .sm-scene-label{left:22px;bottom:18px;font-size:10px}
}
@media print{.sm-controls,.sm-play-state{display:none!important}.service-film{break-inside:avoid;background:white;padding-block:24px}.sm-stage{max-height:260px}.sm-heading{display:block}.sm-heading>p{margin-top:15px}.sm-story{min-height:0}.sm-disclosure{display:block}}
/* Supporting solutions share the photographic precision language. */
.spg-scene{position:absolute;inset:0;overflow:hidden;background:#dbe4e8}
.spg-photo{display:block;width:100%;height:100%;object-fit:cover}
.spg-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#16374a12,transparent 45%,#17354825)}
.spg-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:1;fill:none;pointer-events:none}
.spg-overlay path,.spg-overlay circle{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.spg-line,.spg-path,.spg-bracket{stroke:#d7f2ff;stroke-width:1.1;fill:none;filter:drop-shadow(0 1px 2px #12394e66)}
.spg-path{stroke-dasharray:5 7;stroke:#b9e8ff}.spg-bracket{stroke-width:1.5}
.spg-area{fill:#d5f1ff22;stroke:#dcf5ff;stroke-width:1.2;stroke-dasharray:4 5}
.spg-node>circle:first-child{fill:#edfaff;stroke:#246e96;stroke-width:1.2}.spg-ring{stroke:#e6f8ff;stroke-width:.8;fill:none;opacity:.65}
.spg-number{fill:#f1fbff;font:11px Arial,sans-serif;paint-order:stroke;stroke:#214a5b;stroke-width:2px;stroke-linejoin:round}
.spg-note rect{fill:#f8fcfff0;stroke:#ffffff99;stroke-width:.7}.spg-note text{fill:#275b76;font:11px Arial,sans-serif;letter-spacing:.015em}
.spg-point{stroke:none}.spg-canopy{fill:#caf4e3}.spg-ground{fill:#a5dbff}
.sm-stage:has(.spg-scene) .sm-stage-header{background:linear-gradient(180deg,#f4f9faee,transparent);padding-bottom:32px;color:#2b566c;z-index:3}
.sm-stage:has(.spg-scene) .sm-stage-header>span:last-child{color:#52778b}
.sm-stage:has(.spg-scene) .sm-scene-label{z-index:3;background:#f8fcfff2;border-color:#ffffffb3;box-shadow:0 3px 15px #18374915}
.sm-preview.is-playing .spg-acquire{animation:sm-lines 6s linear infinite}
.sm-preview.is-playing .spg-point-layer{animation:sm-opacity 6s ease-in-out infinite}
.sm-preview.is-playing .spg-node .spg-ring{animation:sm-opacity 6s ease-in-out infinite}
@media(max-width:760px){.spg-note{display:none}.spg-number{font-size:13px}.spg-line,.spg-path{stroke-width:1}.sm-stage:has(.spg-scene) .sm-stage-header{padding-bottom:24px}.spg-bracket{stroke-width:1.3}}
/* Source-based chapters preserve the original report extent and UI labels. */
.spg-source-scene{background:#f7f9fa}
.spg-source-scene>.spg-photo.source-output{object-fit:contain;padding:16px 20px 46px;background:#f7f9fa;filter:none}
.spg-source-caption{position:absolute;bottom:10px;left:20px;right:20px;font-size:10px;line-height:1.5;color:#4b687b;background:#f7f9fae8;padding:4px 0}
@media(max-width:760px){.spg-source-scene>.spg-photo.source-output{padding:8px 8px 40px}.spg-source-caption{left:10px;right:10px;font-size:9px}}
.sm-stage:has(.spg-source-scene) .sm-scene-label{display:none}
.sm-stage:has(.spg-source-scene) .sm-stage-header{background:#f7f9fa;font-size:9px;padding:15px 20px}
.spg-source-scene>.spg-photo.source-output{padding-top:54px;padding-bottom:44px}
@media(max-width:760px){.sm-stage:has(.spg-source-scene){aspect-ratio:4/3}.sm-stage:has(.spg-source-scene) .sm-stage-header{padding:10px;font-size:8px}.sm-stage:has(.spg-source-scene) .sm-stage-header>span:last-child{font-size:7px}.spg-source-scene>.spg-photo.source-output{padding-top:40px;padding-bottom:44px}}

/* Source chapters reserve the tallest native frame; no internal letterboxing or overlay on data. */
.sm-stage:has(.spg-source-scene){display:grid;grid-template-columns:minmax(0,1fr);aspect-ratio:auto;background:#fff}
.sm-stage:has(.spg-source-scene) .sm-stage-header{position:relative;inset:auto;grid-area:1/1;background:#f7fafc;border-bottom:1px solid #e3ebef}
.sm-stage:has(.spg-source-scene) .sm-scene{position:relative;inset:auto;grid-area:2/1;align-self:center;background:#fff}
.sm-stage:has(.spg-source-scene) .sm-scene[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.spg-source-scene{position:relative;inset:auto;background:#fff}
.spg-source-scene:after{display:none}
.spg-source-scene>.spg-photo.source-output{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;padding:0;background:#fff}
.spg-source-caption{display:block;position:static;margin:0;padding:12px 18px;background:#f7fafc;border-top:1px solid #e3ebef}
@media(max-width:760px){.spg-source-caption{padding:10px 12px;font-size:9px}}
