/* DigitAll Union: one distinct artwork per section; optical cable is the hero. */
.hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:24px;align-items:center}
.hero h1{font-size:clamp(44px,4.4vw,72px);line-height:1.12;letter-spacing:-.06em}
.hero-copy{padding-top:10px}.hero .eyebrow{font-size:11px;line-height:1.6;max-width:450px}
.hero .highlight{padding-bottom:3px}.hero-lead{font-size:17px}
.du-film{margin:0;min-width:0;position:relative}.du-film-meta{display:flex;justify-content:space-between;gap:18px;font:10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#57624e;padding:8px 0;border-bottom:1px solid var(--line)}
.du-film-viewport{position:relative;width:100%;aspect-ratio:1.4;overflow:hidden;background:#1a1d1b}.du-film-clip{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .65s ease;filter:saturate(.92) contrast(1.03)}.du-film-clip.is-active{opacity:1}.du-film-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,rgba(13,17,15,.26),transparent 55%),linear-gradient(0deg,rgba(13,17,15,.22),transparent 45%)}
.du-film-meaning{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}.du-film-meaning span{border-top:2px solid #d9dfd1;padding-top:10px;color:#6a7363;transition:border-color .25s,color .25s}.du-film-meaning span.is-active{border-color:#86a835;color:#304214}
.du-film-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:14px}.du-film-controls button{font-size:11px;line-height:1.5;padding:10px 12px;background:#e8ecdf;color:#24301c;min-height:42px}.du-film-controls button:hover{background:#dbe4c8}.du-film-controls>span{font:10px ui-monospace,SFMono-Regular,Consolas,monospace;color:#65705d}.du-film-scrub{margin:0;flex:1;min-width:90px}.du-film-scrub input{width:100%;accent-color:#708f2c;height:32px;cursor:ew-resize}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#expertise,#approach{display:grid;grid-template-columns:1.15fr .85fr;gap:0 40px;align-items:center}
#expertise .section-top,#approach .section-top,#expertise .services,#approach .steps{grid-column:1/-1}
#expertise h2,#approach h2{grid-column:1;grid-row:2}
.integration-visual,.roadmap-visual{grid-column:2;grid-row:2;margin:10px 0 38px}
.integration-visual img,.roadmap-visual img{display:block;width:100%;aspect-ratio:1.6;object-fit:cover;mix-blend-mode:multiply}
.integration-visual figcaption,.roadmap-visual figcaption{font-size:12px;line-height:1.6;color:#4d534f;margin-top:12px}
.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.scenario-grid article{padding:28px;overflow:hidden}
.scenario-art{width:calc(100% + 56px);max-width:none;margin:-28px -28px 26px;aspect-ratio:1.8;height:auto;object-fit:cover;mix-blend-mode:multiply}
.scenario-grid h3{font-size:28px;margin:22px 0 16px}.scenario-grid p{max-width:540px}
.proof{display:grid;grid-template-columns:1.1fr .9fr;gap:0 40px;align-items:center}
.proof .section-top{grid-column:1/-1}.proof h2{grid-column:1;margin-bottom:36px}
.diagnostic-visual{grid-column:2;grid-row:2;margin:0 0 32px;min-width:0}
.diagnostic-visual img,.support-visual img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.diagnostic-visual figcaption,.support-visual figcaption{font-size:13px;line-height:1.6;color:#4d534f;max-width:350px;margin:12px 0 0}
.proof-grid{grid-column:1/-1}
.about-brand{min-width:0;overflow:hidden}.about-fibers{display:block;width:145%;max-width:none;margin-top:45px;opacity:.55;filter:invert(1);mix-blend-mode:screen;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 70%,transparent)}
.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:0 55px;align-items:start}
.faq .section-top,.faq h2{grid-column:1/-1}
.support-visual{grid-column:1;grid-row:3;margin:0;position:sticky;top:32px;min-width:0}
.faq-list{grid-column:2;grid-row:3}
#start{position:relative;isolation:isolate;overflow:hidden}
.start h2{max-width:1000px}
@media(prefers-reduced-motion:no-preference){
 .scenario-art{transition:transform .6s cubic-bezier(.2,.6,.2,1)}
 .scenario-grid article:hover .scenario-art{transform:scale(1.025)}
}
@media(max-width:1100px){
 .hero{grid-template-columns:1fr}.du-film{max-width:880px;width:100%;justify-self:center}
 .du-film-viewport{aspect-ratio:1.85}.hero h1{max-width:850px}
}
@media(max-width:700px){
 .proof,.faq,#expertise,#approach{display:block}.diagnostic-visual{margin:0 0 28px}
 .support-visual{position:static;margin:0 0 30px}.diagnostic-visual img,.support-visual img{max-width:460px;margin:auto}
 .integration-visual,.roadmap-visual{margin:0 0 32px}
 .section-top{gap:20px}.section-top p{flex-shrink:0}
 .scenario-grid{grid-template-columns:1fr}.scenario-grid h3{font-size:25px}
 .about-fibers{width:100%;max-height:160px;object-fit:cover;margin-top:25px}
 .du-film-meta{font-size:9px}.du-film-meta span:first-child{max-width:120px}
 .du-film-viewport{aspect-ratio:1.25}.du-film-meaning{font-size:9px;gap:8px}
 .du-film-controls{gap:8px}
 .hero .eyebrow{font-size:10px}.hero-lead{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.du-film-clip,.du-film-meaning span,.scenario-art{transition:none}}

/* Scroll story: business inputs become a working digital assistant. */
.transformation{background:#151817;color:var(--paper);padding:105px 4.5% 0;overflow:clip}
.transformation-intro{max-width:1120px;margin-bottom:70px}
.transformation-intro .eyebrow{color:#aeb8a9}
.transformation-intro h2{font-size:clamp(42px,5.8vw,92px);margin:30px 0 34px;max-width:1200px}
.transformation-intro h2 em{color:var(--lime)}
.transformation-intro>p{color:#bdc5bb;font-size:18px;line-height:1.75;max-width:720px}
.transformation-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(460px,1.28fr);gap:7vw;align-items:start}
.story-sticky{grid-column:2;grid-row:1;position:sticky;top:5vh;margin:0;align-self:start;min-width:0}
.story-meta{display:flex;justify-content:space-between;gap:20px;padding:0 0 12px;font:10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#aab4a6;letter-spacing:.04em}
.story-frame-stack{position:relative;aspect-ratio:1.04;overflow:hidden;background:#eae4d9;border:1px solid #3d443f}
.story-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .65s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.story-frame.is-active{opacity:1;transform:scale(1)}
.story-sequence{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease}
.sequence-ready .story-sequence{opacity:1}.sequence-ready .story-frame{opacity:0}
.story-sticky figcaption{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:15px 0;border-bottom:1px solid #3e4540;font-size:12px;color:#d9dfd7}
.story-dots{display:flex;align-items:center;gap:6px}
.story-dots button{display:block;width:22px;height:3px;min-height:3px;padding:0;background:#4c554e;border-radius:0;transition:width .25s,background .25s}
.story-dots button:hover{background:#7b887d}.story-dots button.is-active{width:42px;background:var(--lime)}
.transformation-steps{grid-column:1;grid-row:1}
.transformation-step{min-height:56vh;display:flex;flex-direction:column;justify-content:center;border-top:1px solid #343a36;opacity:.32;transition:opacity .45s;padding:50px 0}
.transformation-step.is-active{opacity:1}
.transformation-step>span{font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--lime);letter-spacing:.06em}
.transformation-step h3{font-size:clamp(28px,3vw,48px);letter-spacing:-.045em;margin:25px 0 20px}
.transformation-step p{color:#b9c1b7;font-size:16px;line-height:1.75;max-width:520px;margin:0}
.story-result a{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;color:#171b18;background:var(--lime);font-size:13px;font-weight:700;padding:18px 20px;margin-top:30px;max-width:430px}
.story-result a:hover{opacity:1;background:#dcff78}
.du-identity{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:6vw;margin-top:50px;padding:90px 0;border-top:1px solid #3c433e}
.du-identity img{display:block;width:100%;height:auto;border:1px solid #3d443f}
.du-identity .eyebrow{color:var(--lime)}
.du-identity h3{font-size:clamp(34px,4vw,62px);letter-spacing:-.05em;margin:28px 0}
.du-identity p{font-size:16px;line-height:1.75;color:#b9c1b7;max-width:520px}
@media(max-width:900px){
 .transformation{padding-top:75px}.transformation-intro{margin-bottom:45px}
 .transformation-layout{display:flex;flex-direction:column;gap:0}
 .story-sticky{order:0;width:100%;top:12px;z-index:3;background:#151817;padding-top:8px}
 .transformation-steps{order:1;width:100%}
 .transformation-step{min-height:52vh;padding-top:190px;justify-content:flex-end}
 .story-frame-stack{aspect-ratio:1.5}.story-frame{object-position:center 42%}
 .du-identity{grid-template-columns:1fr;padding:65px 0}.du-identity img{max-height:520px;object-fit:cover}
}
@media(max-width:600px){
 .transformation{padding-left:5%;padding-right:5%}.transformation-intro>p{font-size:16px}
 .story-sticky{top:6px}.story-frame-stack{aspect-ratio:1.3}
 .story-sticky figcaption{align-items:flex-start;flex-direction:column;gap:12px}.story-dots{width:100%}.story-dots button{flex:1}.story-dots button.is-active{flex:2;width:auto}
 .transformation-step{min-height:60vh;padding-top:230px}.transformation-step h3{font-size:31px}
 .du-identity{margin-top:20px}.du-identity img{min-height:280px;object-fit:cover}
}
@media(prefers-reduced-motion:reduce){.story-frame,.transformation-step,.story-dots button{transition:none}}
