/* CASCODE — standalone 3D passage physically occupying the hero/services gap */
.cascode-hero-tunnel-section{position:relative!important;z-index:3;width:100%!important;max-width:none!important;height:200vh!important;margin:0!important;padding:0!important;overflow:clip;background:transparent!important}
.cascode-hero-tunnel{--tunnel-progress:0;--tunnel-enter:0;--tunnel-aperture:0;--tunnel-section-entry:0;position:absolute;inset:0 auto auto 0;width:100%;height:100svh;min-height:620px;overflow:hidden;isolation:isolate;background:transparent;opacity:var(--tunnel-section-entry);transform:translate3d(0,calc((1 - var(--tunnel-section-entry)) * 18vh),0) scale(calc(.92 + var(--tunnel-section-entry) * .08));transform-origin:center bottom;will-change:opacity,transform}
.cascode-hero-tunnel.is-pinned{position:fixed;inset:0 auto auto 0}.cascode-hero-tunnel.is-after{top:auto;bottom:0}
.cascode-hero-tunnel__canvas{position:absolute;z-index:0;inset:0;width:100%;height:100%;display:block;filter:saturate(1.24) contrast(1.08) blur(calc((1 - var(--tunnel-section-entry)) * 7px))}
.cascode-hero-tunnel__vignette{position:absolute;z-index:2;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 28%,rgba(5,8,12,.06) 70%,rgba(5,8,12,.18) 100%)}
.cascode-hero-tunnel__status{position:absolute;z-index:3;right:clamp(28px,6vw,88px);bottom:clamp(34px,5vh,60px);display:flex;gap:18px;color:rgba(244,242,236,.45);font:9px/1 var(--font-mono,monospace);letter-spacing:.14em;text-transform:uppercase}.cascode-hero-tunnel__status b{min-width:34px;color:#5de7c5;font-weight:500}
.cascode-hero-tunnel__copy{position:absolute;z-index:3;left:50%;top:50%;width:min(90vw,900px);text-align:center;opacity:clamp(0,calc((var(--tunnel-section-entry) - .34) * 1.9 * (1 - var(--tunnel-progress) * 2.4)),1);transform:translate3d(-50%,calc(-50% + (1 - var(--tunnel-section-entry)) * 90px - var(--tunnel-progress) * 60px),0);filter:blur(calc((1 - var(--tunnel-section-entry)) * 8px));pointer-events:none;will-change:opacity,transform,filter}.cascode-hero-tunnel__copy span{display:block;margin-bottom:17px;color:#5de7c5;font:10px/1 var(--font-mono,monospace);letter-spacing:.16em;text-transform:uppercase}.cascode-hero-tunnel__copy strong{display:block;color:#f4f2ec;font:600 clamp(54px,7.4vw,112px)/.86 var(--font-sans,sans-serif);letter-spacing:-.065em;text-transform:uppercase;text-shadow:0 8px 40px rgba(0,0,0,.55)}.cascode-hero-tunnel__copy strong em{font-style:normal;color:#8acbc1}

/* A próxima seção invade o último ato do túnel e nasce com o scroll. */
#servicos.services{--services-entry:0;margin-top:-70vh!important;z-index:5!important}
#servicos.services>div:first-child{clip-path:inset(calc((1 - var(--services-entry)) * 100%) 0 0 0);opacity:var(--services-entry);transform:translate3d(0,calc((1 - var(--services-entry)) * 34vh),0) scale(calc(.94 + var(--services-entry) * .06));transform-origin:center top;will-change:clip-path,opacity,transform}
#servicos.services .section-index,#servicos.services .section-title,#servicos.services .cascode-services-lead{transform:translate3d(0,calc((1 - var(--services-entry)) * 70px),0);opacity:var(--services-entry)}
#servicos.services .card{transform:translate3d(0,calc((1 - var(--services-entry)) * (90px + var(--service-index,0) * 36px)),0)!important;opacity:calc(var(--services-entry) * .72)!important}
#servicos.services .card.is-active{transform:translate3d(0,calc((1 - var(--services-entry)) * 90px),0)!important;opacity:var(--services-entry)!important}
#servicos.services .showcase{opacity:var(--services-entry)!important;transform:translate3d(0,calc((1 - var(--services-entry)) * 120px),0) scale(calc(.9 + var(--services-entry) * .1))!important}
@media(max-width:860px){.cascode-hero-tunnel-section{height:175vh!important}.cascode-hero-tunnel{min-height:100svh}.cascode-hero-tunnel__status{right:20px;bottom:96px}.cascode-hero-tunnel__copy{width:88vw}.cascode-hero-tunnel__copy strong{font-size:14vw}#servicos.services{margin-top:-48vh!important}}
