.hero-title{animation:hero-in .9s cubic-bezier(.2,.75,.25,1) both}
.hero-note{animation:side-in .9s .15s cubic-bezier(.2,.75,.25,1) both}
.hero-note a,.contact-link,.service-register article,.row{transition:background-color .25s,color .25s,transform .25s}
.hero-note a:hover{color:var(--signal);padding-left:8px}
.service-register article:hover{background:#fff;transform:translateX(10px)}
.row:not(.head):hover{background:#102b41;transform:translateX(8px)}
.slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.035);transition:opacity .85s ease,transform 1.2s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.slide.active{opacity:1;transform:scale(1);pointer-events:auto;animation:slide-drift 5.2s ease-out both}
.slide img{width:100%;height:100%;object-fit:cover}
.slide-label{z-index:3}
.slider-controls{position:absolute;z-index:4;right:15px;bottom:12px;display:grid;grid-template-columns:44px 110px 44px;align-items:center;background:rgba(7,21,36,.94);color:white}
.slider-controls button{height:42px;border:0;background:transparent;color:white;font-size:1.15rem;cursor:pointer}
.slider-controls button:hover,.slider-controls button:focus-visible{background:var(--signal);outline:none}
.progress{height:1px;background:#66798a;overflow:hidden}
.progress i{display:block;height:2px;background:var(--signal);transform-origin:left;transition:transform .55s ease}
.project-data [data-title],.project-data [data-place],.project-data [data-type],.project-data [data-scope],.project-data [data-stage]{transition:opacity .18s,transform .18s}
.project-data.changing [data-title],.project-data.changing [data-place],.project-data.changing [data-type],.project-data.changing [data-scope],.project-data.changing [data-stage]{opacity:0;transform:translateY(7px)}
.reveal{opacity:1;transform:none}
.reveal.in-view{animation:content-in .7s cubic-bezier(.2,.7,.2,1) both}
.service-register article.reveal:nth-child(2),.row.reveal:nth-child(2){transition-delay:.06s}
.service-register article.reveal:nth-child(3),.row.reveal:nth-child(3){transition-delay:.12s}
.service-register article.reveal:nth-child(4),.row.reveal:nth-child(4){transition-delay:.18s}
.service-register article.reveal:nth-child(5),.row.reveal:nth-child(5){transition-delay:.24s}
@keyframes hero-in{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}
@keyframes side-in{from{opacity:0;transform:translateX(45px)}to{opacity:1;transform:none}}
@keyframes slide-drift{from{transform:scale(1.035)}to{transform:scale(1)}}
@keyframes content-in{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}
@media(max-width:900px){.slider-controls{grid-template-columns:42px 80px 42px}.service-register article:hover,.row:not(.head):hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.hero-frame{opacity:0}.hero-frame.active{opacity:1}}
