.causal-landing{padding-bottom:30px}
.causal-stream{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 45px;margin-top:45px;position:relative}
.causal-stream article{text-align:center;position:relative;isolation:isolate}
.causal-art{width:180px;height:155px;margin:auto}.causal-art svg{width:100%;height:100%}
.causal-origin{display:block;font-size:12px;letter-spacing:.08em;color:#9477aa;margin:8px 0 15px}
.causal-stream h3{font-size:25px;line-height:1.25;font-weight:500;color:#3d6185;margin:0}
.causal-thread{width:2px;height:96px;margin:20px auto 15px;background:linear-gradient(#d9e0ed,#b89bd0);position:relative}
.causal-thread i{position:absolute;left:-3px;top:0;width:8px;height:8px;border-radius:50%;background:#ab86c5}
.causal-thread b{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);font-size:20px;color:#a485bc;font-weight:400;background:white;line-height:1}
.is-visible .causal-thread i{animation:causal-travel 3s ease-in-out infinite}
.causal-stream article:nth-child(2) .causal-thread i{animation-delay:.35s}.causal-stream article:nth-child(3) .causal-thread i{animation-delay:.7s}
@keyframes causal-travel{0%{transform:translateY(0);opacity:.2}20%{opacity:1}85%,100%{transform:translateY(83px);opacity:0}}
.causal-stream article>p{font-size:13px;color:#8691a2;margin:0 0 14px}
.causal-stream article>strong{font-size:28px;font-weight:500;color:#76538b;line-height:1.2;display:block;min-height:70px}
.causal-convergence{grid-column:1/-1;width:100%;height:110px;margin-top:20px;overflow:visible}
.causal-convergence path{stroke:#d3c4e1;stroke-width:1.5;fill:none}.causal-convergence circle{fill:#a58abc}
.causal-resolution{text-align:center;margin:25px auto 0;max-width:900px}
.causal-resolution h3{font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.22;letter-spacing:-.03em}
.causal-entry{display:flex;justify-content:center;align-items:center;gap:18px;margin:28px auto}
.causal-entry>span{width:100px;height:95px}.causal-entry svg{width:100%;height:100%}
.causal-entry>div{text-align:left}.causal-entry small{font-size:10px;letter-spacing:.11em;color:#8d72a0}.causal-entry p{font-size:17px;line-height:1.5;color:#617792;margin:10px 0 0}
.causal-note{font-size:10px;color:#9096a1;text-align:center;margin:25px 0 0}
.is-paused .causal-thread i{animation-play-state:paused}
@media(max-width:760px){.causal-stream{grid-template-columns:1fr;gap:40px;margin-top:30px}.causal-art{height:130px;width:160px}.causal-stream h3{font-size:23px}.causal-thread{height:70px;margin:15px auto}.causal-stream article>strong{font-size:26px;min-height:0}.causal-convergence{height:55px;margin:0}.causal-convergence path{d:path("M550 0V115")}.causal-resolution h3{font-size:29px}.causal-entry{gap:10px}.causal-entry>span{width:80px;height:85px;flex-shrink:0}.causal-entry p{font-size:15px}.causal-origin{font-size:11px}.causal-thread i{max-height:5px}@keyframes causal-travel{to{transform:translateY(60px);opacity:0}}}
@media(prefers-reduced-motion:reduce){.is-visible .causal-thread i{animation:none}}

/* One continuous brand-colored route, with a single terminal arrow. */
.causal-thread{background:linear-gradient(#0076be,#5b6fe0);width:2px}
.causal-thread i{background:#0076be}
.causal-stream article{padding-bottom:20px}
.causal-stream article:after{content:"";position:absolute;top:calc(155px + 8px + 15px + 15px + 31px + 20px);bottom:0;left:calc(50% - 1px);width:2px;background:linear-gradient(#0076be,#5b6fe0 50%,#0076be);z-index:-1}
.causal-stream article>p,.causal-stream article>strong{background:#fff;position:relative;z-index:1;width:fit-content;margin-left:auto;margin-right:auto;padding:6px 12px}
.causal-stream article>strong{margin-top:-6px}
.causal-convergence{margin-top:0}
.causal-convergence path{stroke:url(#causal-dicsys);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.causal-stream article:after{top:210px}.causal-convergence .causal-final-arrow{d:path("m542 108 8 10 8-10")}}

/* Geometry-driven SVG routes; no masked fragments or hard-coded connection points. */
.causal-stream{isolation:isolate;gap:0 50px}
.causal-stream article{padding:0 26px 22px;z-index:1;pointer-events:none}
.causal-stream article:after{display:none}
.causal-stream article>p,.causal-stream article>strong{background:transparent;padding:0;width:auto}
.causal-stream article>p{margin:0 0 16px;font-size:13px}
.causal-stream article>strong{margin:0;font-size:27px;line-height:1.25;min-height:68px}
.causal-thread{height:90px;margin:0;background:none;width:100%}
.causal-art{pointer-events:auto}
.causal-stream h3{font-size:24px;min-height:60px;display:flex;justify-content:center;align-items:center}
.causal-join-space{grid-column:1/-1;height:125px}
.causal-route-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.causal-route-layer path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.route-base{stroke:url(#route-brand);stroke-width:1.7;opacity:.45}
.route-flow{stroke:url(#route-brand);stroke-width:2;stroke-dasharray:24 900;opacity:0}
.causal-stream.is-visible .route-flow{opacity:.8;animation:route-signal 7s linear infinite;animation-delay:var(--route-delay)}
.route-tip{stroke:#a974cd;stroke-width:1.8}
@keyframes route-signal{from{stroke-dashoffset:924}to{stroke-dashoffset:0}}
.causal-stream.is-paused .route-flow{animation-play-state:paused}
@media(max-width:760px){.causal-stream{gap:35px}.causal-stream article{padding:0 30px 35px}.causal-stream h3{font-size:23px;min-height:55px}.causal-thread{height:70px}.causal-stream article>strong{font-size:25px;min-height:0}.causal-join-space{height:0}.causal-resolution{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.causal-stream.is-visible .route-flow{animation:none;opacity:0}}

/* Straight vertical routes, aligned with each column. */
.causal-join-space{height:65px}
.causal-route-layer .route-base{opacity:.65}
@media(max-width:760px){.causal-stream article{padding-bottom:55px}.causal-join-space{height:0}}

/* Three descending strands converge below the results, without separate arrowheads. */
.causal-join-space{height:135px}
.causal-route-layer .route-base{stroke-width:1.6;opacity:.7}
.causal-stream article>p,.causal-stream article>strong{background:#fff;width:fit-content;padding:5px 12px;margin-left:auto;margin-right:auto}
.causal-stream article>p{margin-bottom:6px}
@media(max-width:760px){.causal-join-space{height:0}}

.causal-stream article>p{margin-bottom:0;padding-bottom:10px}.causal-stream article>strong{padding:5px 0}

/* Problem-to-solution bridge: open composition, connected to the existing walkthrough. */
.solution-bridge{max-width:1100px;margin-top:0}
.solution-hub{display:flex;align-items:center;justify-content:center;gap:12px;position:relative;padding:18px 0 10px}
.solution-hub:before{content:"";position:absolute;width:340px;height:180px;background:radial-gradient(ellipse,#eee8fc88,transparent 70%);z-index:-1}
.solution-hub>span{width:120px;height:110px}
.solution-hub svg,.solution-mini svg{width:100%;height:100%}
.solution-hub>div{text-align:left}
.solution-hub .kicker{font-size:10px;letter-spacing:.16em}
.solution-hub h3{font-size:38px;margin:4px 0 8px;color:#294d8b;font-weight:650}
.solution-hub p{font-size:17px;color:#667b94;margin:0}
.solution-branches{height:60px;margin:0 3%}
.solution-branches svg{width:100%;height:100%;overflow:visible}
.solution-branches path{fill:none;stroke:url(#solution-line);stroke-width:1.4;vector-effect:non-scaling-stroke;opacity:.4}
.solution-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.solution-outcomes button{font:inherit;border:0;background:transparent;padding:10px 8px 24px;cursor:pointer;display:flex;align-items:center;flex-direction:column;color:#294d8b;border-radius:16px;transition:background .25s,transform .25s}
.solution-outcomes button:hover,.solution-outcomes button:focus-visible{background:#f7f8fd;transform:translateY(-4px)}
.solution-outcomes button:focus-visible{outline:2px solid #0076be;outline-offset:4px}
.solution-before{font-size:12px;color:#8c7c9c}
.solution-mini{display:block;width:135px;height:105px;transition:transform .3s}
.solution-outcomes button:hover .solution-mini{transform:translateY(-5px)}
.solution-outcomes strong{font-size:25px;font-weight:550;letter-spacing:-.02em}
.solution-action{font-size:14px;color:#6a7d96;margin-top:12px}
.solution-action b{color:#9761cc;margin-left:8px}
.causal-landing:has(.solution-bridge){padding-bottom:20px}
.connected-process{padding-top:48px}
.connected-process .section-intro h2{font-size:clamp(28px,3vw,40px)}
.connected-process .section-intro{margin-bottom:38px}
@media(max-width:760px){.solution-hub>span{width:80px;height:90px;flex-shrink:0}.solution-hub h3{font-size:30px}.solution-hub p{font-size:15px}.solution-outcomes{gap:8px}.solution-outcomes strong{font-size:17px}.solution-before{font-size:10px}.solution-mini{width:95px;height:85px}.solution-action{font-size:12px}.solution-outcomes button{padding:10px 3px}.solution-branches{height:45px;margin:0}.connected-process{padding-top:30px}}
@media(prefers-reduced-motion:reduce){.solution-outcomes button,.solution-mini{transition:none}.solution-outcomes button:hover,.solution-outcomes button:hover .solution-mini{transform:none}}

/* Selected hook: business intent paired with a progressive typographic reveal. */
.causal-resolution.clarity-bridge{display:grid;grid-template-columns:1.1fr 1fr;gap:28px 75px;max-width:1100px;text-align:left;margin:40px auto 0;align-items:center;padding:15px 0 25px}
.clarity-bridge .clarity-copy h3{font-size:clamp(30px,3.4vw,45px);font-weight:550;line-height:1.13;margin:0 0 20px;letter-spacing:-.035em}
.clarity-message{font-size:clamp(24px,2.6vw,34px);line-height:1.23;letter-spacing:-.025em;margin:0;font-weight:500}
.clarity-reveal p{font-size:clamp(25px,3vw,40px);line-height:1.25;letter-spacing:-.025em;color:#cbd4e2;margin:25px 0;transform:translateY(8px);transition:color .85s,transform .85s}
.clarity-bridge.is-revealed .clarity-reveal p{color:#4b5f9b;transform:none}
.clarity-bridge.is-revealed .clarity-reveal p:nth-child(2){transition-delay:.45s;color:#6b58b5}
.clarity-bridge.is-revealed .clarity-reveal p:nth-child(3){transition-delay:.9s;color:#9853c9}
.clarity-link{grid-column:1/-1;justify-self:start;color:#47638b;border:1px solid #d3dfee;border-radius:30px;padding:15px 22px;font-size:15px;text-decoration:none;display:inline-flex;align-items:center;gap:25px;transition:border-color .2s,background .2s}
.clarity-link:hover{background:#f6f5fc;border-color:#a997d0}.clarity-link:focus-visible{outline:2px solid #0076be;outline-offset:4px}
@media(max-width:760px){.causal-resolution.clarity-bridge{grid-template-columns:1fr;gap:16px;margin-top:25px;padding:0 10px 20px}.clarity-reveal p{margin:18px 0}.clarity-link{margin-top:5px}}
@media(prefers-reduced-motion:reduce){.clarity-reveal p{transition:none;transform:none;color:#625ba3}}

/* Guided walkthrough: business value first, evidence and decision together. */
#transformacion{scroll-margin-top:45px}
.inline-process .step-theater{min-height:330px;gap:35px}
.inline-process .story-heading h2{font-size:clamp(29px,3vw,40px)!important}
.inline-process .story-heading p{max-width:39ch;font-size:17px;line-height:1.5}
.inline-process .step-gain{margin-top:24px;border-left:3px solid #a071ce;padding-left:18px}
.inline-process .step-gain strong{font-size:23px;max-width:29ch;color:#6653a6}
.inline-process .story-takeaway{border-top:0;display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:18px 0 8px;padding:22px 25px;background:linear-gradient(110deg,#f1f7fb,#f7f3fc);border-radius:16px}
.inline-process .story-takeaway span{font-size:11px;color:#6c66a5;letter-spacing:.09em}
.inline-process .story-takeaway p{font-size:18px;line-height:1.4;color:#345575;margin:9px 0 0}
.inline-process .story-controls{padding:14px 0 6px}
.inline-process .illustration-label{margin:12px 0}
@media(max-width:760px){.inline-process .story-takeaway{grid-template-columns:1fr;gap:18px;padding:20px}.inline-process .story-takeaway p{font-size:16px}.inline-process .step-gain{max-width:340px;margin:0 auto;text-align:left}.inline-process .step-gain strong{font-size:22px}.inline-process .story-controls .btn{padding:12px}.inline-process .step-theater{min-height:0}}
