/* Distinct jobs: hero makes room, selector stays still, process guides, contact closes. */
#ai-hero{overflow:clip}
#ai-hero .ai-hero-title>span:first-child{transform:translate3d(calc(var(--hero-departure,0) * -58px),0,0);opacity:calc(1 - var(--hero-departure,0) * .58)}
#ai-hero .ai-hero-title>span.ai-blue{transform:translate3d(calc(var(--hero-departure,0) * 24px),0,0);transform-origin:center}
/* No glowing moving grids, blur, scroll delays, initial hide or generic fade-up. */
#prinzip .ai-step-card .ai-step-card-title{transition:color 160ms linear}
#prinzip .ai-step-card[data-current=true] .ai-step-card-title{color:#a7c8ff}
#prinzip .ai-step-card[data-current=false] .ai-step-card-title{color:#e5ecf7}
#ai-kontakt .ai-cta-box{position:relative}
.ai-contact-rule{position:absolute;left:0;right:0;top:0;height:1px;background:#779aff;transform:scaleX(1);transform-origin:center;pointer-events:none}
#ai-main .lab-module-tabs [data-module-tab]{transition:background-color 120ms linear,color 120ms linear,border-color 120ms linear}
@media(prefers-reduced-motion:reduce){#ai-hero .ai-hero-title>span{transform:none!important;opacity:1!important}.ai-contact-rule{transform:scaleX(1)!important}#prinzip .ai-step-card .ai-step-card-title,#ai-main .lab-module-tabs [data-module-tab]{transition:none}}

.ai-contact-rule--bottom{top:auto;bottom:0}

/* Original ocean contour artwork. Only the pre-rendered glow opacity changes. */
#prinzip{isolation:isolate;overflow:clip}
#prinzip>.ai-container{position:relative;z-index:1}
.ai-topography{position:absolute;inset:0;pointer-events:none;z-index:0;mix-blend-mode:screen;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 88%,transparent)}
.ai-topography-base,.ai-topography-glow{position:absolute;inset:0;background-image:url('/assets/ocean-contours-blue.webp');background-repeat:repeat;background-size:1000px 1000px;background-position:70% 25%;opacity:.16}
.ai-topography-glow{background-image:url('/assets/ocean-contours-glow.webp');opacity:.16;mask-image:radial-gradient(ellipse at 55% 55%,#000,rgba(0,0,0,.7) 50%,transparent 85%)}
#prinzip .ai-section-intro,#prinzip .ai-step-card-text{text-shadow:0 1px 3px #090f18}



/* Static texture surfaces: scroll only translates compositor layers, never repaints positions/masks. */
.ai-topography{overflow:hidden}
.ai-topography-base,.ai-topography-glow{inset:auto 0;top:calc(-1 * var(--texture-pad,1000px));height:var(--texture-height,3000px);background-attachment:scroll;background-position:center var(--texture-pad,1000px);will-change:transform}
.ai-topography-base{opacity:.25}
.ai-topography-glow{opacity:.1;mask-image:linear-gradient(180deg,transparent var(--glow-start,1290px),#000 var(--glow-centre,1550px),transparent var(--glow-end,1810px));-webkit-mask-image:linear-gradient(180deg,transparent var(--glow-start,1290px),#000 var(--glow-centre,1550px),transparent var(--glow-end,1810px));will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){.ai-topography-base,.ai-topography-glow{transform:none!important;will-change:auto}.ai-topography-glow{opacity:.1!important}}
