/* Assuras visual stories: photographic chapters and connected operating views. */
.visual-chapter{position:relative;isolation:isolate;margin:0;min-height:590px;background:var(--navy);color:white;display:flex;align-items:flex-end;overflow:hidden}
.visual-chapter-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 52%}
.visual-chapter:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#061623eb,transparent 90%),linear-gradient(90deg,#06162370,transparent 80%)}
.visual-chapter figcaption{padding:90px var(--gutter);width:100%;max-width:1100px}
.visual-chapter .eyebrow{color:#dce6eb;margin-bottom:25px}
.visual-statement{font:500 clamp(42px,5.3vw,78px)/1.09 var(--sans);letter-spacing:-.045em;margin:0;max-width:1000px;text-wrap:balance}
.visual-model{background:#071827;color:#fff;overflow:hidden}
.model-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:end;margin-bottom:50px}
.model-heading .eyebrow{color:#adc5d2}
.model-heading h2{font-size:clamp(42px,4.8vw,70px);max-width:770px;margin-bottom:0;text-wrap:balance}
.model-heading>p{font-size:19px;line-height:1.8;color:#c2d3df;max-width:460px;margin:0 0 5px}
.flow-svg{display:block;width:100%;height:auto;overflow:visible}
.flow-route{fill:none;stroke:#567685;stroke-width:1.4;stroke-dasharray:5 7}
.flow-arrow{fill:none;stroke:#c5dae4;stroke-width:1.5}
.node-halo{fill:#071827;stroke:#466474;stroke-width:1}
.node-core{fill:#112b40;stroke:#93b0c2;stroke-width:1.25}
.flow-svg text{fill:#edf6fc;font:26px var(--serif)}
.flow-labels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px;list-style:none;margin:0;padding:0;text-align:center}
.flow-labels h3{font-size:26px;line-height:1.25;margin:0 0 16px}
.flow-labels p{font-size:16px;color:#c2d3df;line-height:1.75;max-width:235px;margin:0 auto}
.flow-mobile-number{display:none}
.feedback-path{border:1px solid #436273;border-top:0;margin:42px 11.8% 0;min-height:48px;position:relative;display:flex;justify-content:center;align-items:end}
.feedback-path p{color:#bfd3df;font-size:13px;line-height:1.6;text-align:center;margin:0 24px;max-width:75%;padding:0 24px;background:#071827;transform:translateY(50%)}
.feedback-path>span{position:absolute;left:-9px;top:-14px;color:#c7dce7;background:#071827;font-size:26px;line-height:1}
.model-caption{font-size:12px;line-height:1.7;color:#a9c0ce;border-top:1px solid #304b5d;padding-top:22px;margin:68px 0 0}
.model-pair{display:grid;grid-template-columns:1.12fr 1fr;gap:85px;align-items:center}
.orbit-svg{display:block;width:100%;height:auto;overflow:visible}
.orbit-outer{fill:none;stroke:#304b5d;stroke-width:1;stroke-dasharray:2 10}
.orbit-track{fill:none;stroke:#6a8d9f;stroke-width:1.5}
.orbit-spokes{fill:none;stroke:#355466;stroke-width:1;stroke-dasharray:5 7}
.orbit-center{fill:#112b40;stroke:#7195a8;stroke-width:1.5}
.orbit-node{fill:#132e43;stroke:#8caebe;stroke-width:1.25}
.orbit-title{fill:#f2f7fa;font:42px var(--serif);letter-spacing:-1px}
.orbit-number{fill:#eaf3f8;font:27px var(--serif)}
.model-notes{list-style:none;padding:0;margin:0}
.model-notes li{border-top:1px solid #3f5a6d;padding:24px 0;display:grid;grid-template-columns:35px 1fr;gap:26px}
.model-notes h3{font-size:28px;margin:0 0 10px}
.model-notes p{font-size:17px;color:#c2d3df;line-height:1.8;margin:0}
.model-notes .index{font:26px var(--serif);color:#afc8d6;line-height:1.2}
.model-feedback{font-size:15px;color:#b9d0df;padding-top:24px;margin:0;border-top:1px solid #3f5a6d}
.model-pair+.model-caption{margin-top:35px}
.stack-graphic{position:relative;max-width:570px;width:100%;padding:36px 15px 36px 0}
.stack-connection{text-transform:uppercase;font-size:12px;letter-spacing:.17em;color:#adc5d2;margin:0 0 28px 24%;border-left:1px solid #779cad;padding-left:24px}
.stack-layer{border:1px solid #7795a8;padding:24px;display:grid;grid-template-columns:38px 1fr 32px;gap:17px;align-items:center;margin:0 0 17px auto;position:relative;background:#10283b;box-shadow:12px 12px 0 #0b2133}
.stack-layer:before{content:'';position:absolute;top:-18px;left:32px;height:16px;width:1px;background:#7593a5}
.stack-layer strong{font-size:27px;font-weight:400;letter-spacing:-.02em}
.stack-layer>span{font-family:var(--serif);font-size:25px;color:#b3cad7}
.stack-layer svg{width:29px;height:29px;stroke:#a9c6d8;fill:none;stroke-width:1}
.layer-1{width:79%}.layer-2{width:86%}.layer-3{width:93%}.layer-4{width:100%;background:#17374f}
.stack-ground{border-top:1px solid #54798f;margin:34px 0 0 0;transform:skewY(-4deg)}
.capability-visual{position:relative;isolation:isolate;overflow:hidden;min-height:550px;color:#fff;background:var(--navy);display:flex;align-items:end}
.capability-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.capability-visual:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071827d6,transparent 90%),linear-gradient(0deg,#071827c2,transparent 85%)}
.capability-poster{padding:75px var(--gutter);max-width:1000px}
.capability-poster .eyebrow{color:#c6dce7}
.capability-poster h2{font-size:clamp(48px,5.6vw,85px);max-width:830px;text-wrap:balance}
.capability-poster .text-link{min-width:240px;margin-top:6px}
.capability-services{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}
.capability-services>div:first-child h3{font-size:38px;line-height:1.15;max-width:470px}
.capability-services>div:first-child>p:not(.eyebrow){font-size:18px;line-height:1.85;color:var(--muted);max-width:500px}
.capability-showcase:nth-of-type(odd) .capability-services{background:#f0f2f2}
.industry-expanded article{grid-template-columns:35px minmax(270px,.9fr) 1.25fr;align-items:center;gap:45px}
.industry-tile-image{position:relative;display:block;overflow:hidden;aspect-ratio:1.6;background:var(--navy)}
.industry-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.2,1)}
.industry-tile-image:hover img{transform:scale(1.04)}
.industry-expanded h2{font-size:32px;margin-bottom:18px}
.industry-expanded article>div>p{font-size:16px;line-height:1.8}
.page-industry .intro-description{max-width:615px;font-size:20px}
.page-industry .page-intro{min-height:710px}
.page-industry .page-intro h1{max-width:850px}
.industry-context .industry-background{font-size:16px;line-height:1.9;color:var(--muted);max-width:590px;margin:25px 0 0}
.scene-precision-manufacturing .intro-scene{object-position:63% center}
.scene-digital-infrastructure .intro-scene{object-position:65% center}
.scene-life-sciences .intro-scene{object-position:65% center}
.scene-aerospace-hangar .intro-scene{object-position:62% center}
.scene-civic-campus .intro-scene{object-position:62% center}
.scene-agricultural-landscape .intro-scene{object-position:60% center}
.visual-model.is-revealed .flow-svg .node-core,.visual-model.is-revealed .orbit-node{animation:node-arrive .85s cubic-bezier(.2,.65,.2,1) both}
.visual-model.is-revealed .flow-svg g:nth-of-type(2) .node-core{animation-delay:.12s}.visual-model.is-revealed .flow-svg g:nth-of-type(3) .node-core{animation-delay:.24s}.visual-model.is-revealed .flow-svg g:nth-of-type(4) .node-core{animation-delay:.36s}
@keyframes node-arrive{from{stroke-opacity:.2;fill-opacity:.2}to{stroke-opacity:1;fill-opacity:1}}
@media(max-width:1100px){.model-heading{gap:50px}.model-pair{gap:40px}.flow-labels{gap:25px}.flow-labels h3{font-size:24px}.flow-labels p{font-size:15px}.capability-services{gap:60px}.industry-expanded article{gap:28px;grid-template-columns:25px minmax(230px,.9fr) 1.25fr}.industry-expanded h2{font-size:28px}.stack-layer{padding:22px 16px;gap:10px}.stack-layer strong{font-size:24px}.model-notes li{gap:18px}}
@media(max-width:800px){.model-pair{grid-template-columns:1fr 1fr;gap:30px}.model-heading{grid-template-columns:1fr;gap:25px}.model-heading>p{max-width:620px;font-size:18px}.model-notes h3{font-size:25px}.model-notes p{font-size:16px}.model-notes li{grid-template-columns:24px 1fr;gap:14px}.stack-layer{padding:20px 12px;grid-template-columns:25px 1fr;gap:9px}.stack-layer svg{display:none}.stack-layer strong{font-size:22px}.stack-layer>span{font-size:22px}.stack-connection{margin-left:0}.capability-services{gap:40px}.industry-expanded article{grid-template-columns:25px 1fr 1.2fr;gap:22px}}
@media(max-width:700px){
 .visual-chapter{min-height:510px}.visual-chapter figcaption{padding:65px var(--gutter)}.visual-statement{font-size:42px;max-width:520px}.visual-chapter-image{object-position:63% center}.visual-chapter:after{background:linear-gradient(0deg,#061623ed,transparent 95%)}
 .model-heading{margin-bottom:40px}.model-heading h2{font-size:40px}.model-heading>p{font-size:17px}.flow-svg{display:none}.flow-labels{display:block;text-align:left;position:relative}.flow-labels:before{content:'';position:absolute;left:23px;top:25px;bottom:70px;width:1px;background:#54778a}.flow-labels li{position:relative;padding:0 0 34px 78px;min-height:125px}.flow-mobile-number{display:grid;place-items:center;position:absolute;left:0;top:0;width:47px;height:47px;border:1px solid #8eaec0;border-radius:50%;background:#102b40;color:#e7f2f8;font:21px var(--serif)}.flow-labels h3{font-size:27px;padding-top:6px;margin-bottom:12px}.flow-labels p{font-size:16px;margin:0;max-width:400px}.flow-labels li:last-child{padding-bottom:0}.feedback-path{border:0;border-top:1px solid #456779;margin:24px 0 0 78px;display:block;padding-top:23px;min-height:0}.feedback-path>span{display:none}.feedback-path p{margin:0;max-width:none;transform:none;padding:0;text-align:left;font-size:13px}.model-caption{margin-top:38px;font-size:12px}
 .model-pair{display:block}.orbit-svg{max-width:480px;margin:-10px auto 28px}.model-notes li{grid-template-columns:30px 1fr;gap:22px;padding:23px 0}.model-notes h3{font-size:27px}.model-notes p{font-size:16px}.model-pair+.model-caption{margin-top:35px}.model-feedback{font-size:14px}.stack-graphic{padding:10px 12px 38px 0;max-width:500px;margin:auto}.stack-connection{margin-left:21%;font-size:10px}.stack-layer{grid-template-columns:30px 1fr 22px;padding:22px 16px;gap:13px;margin-bottom:15px}.stack-layer svg{display:block;width:22px;height:22px}.stack-layer strong{font-size:24px}.stack-layer>span{font-size:22px}
 .capability-visual{min-height:530px}.capability-poster{padding:65px var(--gutter)}.capability-poster h2{font-size:43px;max-width:550px}.capability-services{display:block}.capability-services>div:first-child{margin-bottom:40px}.capability-services>div:first-child h3{font-size:33px}.capability-services>div:first-child>p:not(.eyebrow){font-size:17px}.capability-photo{object-position:65% center}
 .industry-expanded article{grid-template-columns:25px minmax(0,1fr);gap:20px;align-items:start}.industry-tile-image{grid-column:2;aspect-ratio:1.65;margin-bottom:4px}.industry-expanded article>.index{padding-top:8px}.industry-expanded article>div{grid-column:2}.industry-expanded h2{font-size:29px}.industry-expanded article>div>p{font-size:16px}.industry-expanded article .text-link{font-size:14px}
 .page-industry .page-intro{min-height:680px;padding-top:calc(var(--header) + 55px)}.page-industry .page-intro .intro-description{font-size:18px}.page-industry .page-intro h1{font-size:43px}.industry-context .industry-background{font-size:15px;line-height:1.85}
}
@media(max-width:370px){.model-heading h2{font-size:36px}.visual-statement{font-size:37px}.flow-labels li{padding-left:64px}.feedback-path{margin-left:64px}.flow-labels h3{font-size:25px}.stack-layer{padding:20px 12px;gap:8px;grid-template-columns:25px 1fr 18px}.stack-layer strong{font-size:21px}.capability-poster h2{font-size:38px}.industry-expanded article{gap:14px;grid-template-columns:20px minmax(0,1fr)}.industry-expanded h2{font-size:27px}.page-industry .page-intro h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){.visual-model.is-revealed .node-core,.visual-model.is-revealed .orbit-node{animation:none}.industry-tile-image img{transition:none}}
