:root{--zt-ease:cubic-bezier(.16,1,.3,1);--scroll-velocity:0}@view-transition{navigation:auto}::view-transition-old(root){animation:ztPageOut .24s ease both}::view-transition-new(root){animation:ztPageIn .65s var(--zt-ease) both}@keyframes ztPageOut{to{opacity:0;filter:blur(2px)}}@keyframes ztPageIn{from{opacity:0;transform:translateY(12px);filter:blur(3px)}}
.zt-motion-item{opacity:1;transform:none;filter:none}.zt-motion-ready .zt-motion-item{opacity:0;transform:translateY(calc(26px + var(--motion-group,0)*2px));filter:blur(3px);transition:opacity .85s var(--zt-ease),transform .85s var(--zt-ease),filter .85s var(--zt-ease);transition-delay:calc(var(--motion-order,0)*65ms)}.zt-motion-ready .zt-motion-item.zt-inview{opacity:1;transform:none;filter:none}.zt-motion-ready .page-hero>h1.zt-motion-item{clip-path:inset(0 0 100% 0);transform:translateY(18px);transition:clip-path 1.1s var(--zt-ease),transform 1.1s var(--zt-ease),opacity .2s}.zt-motion-ready .page-hero>h1.zt-inview{clip-path:inset(0);transform:none}.section-label.zt-inview:after{animation:ztLine 1s .35s var(--zt-ease) both}@keyframes ztLine{from{transform:scaleX(0)}}
.detail-image,.labo-cover,.photo-mosaic figure,.service-scenes figure,.editorial-split,.works-home .work-grid>a{position:relative;overflow:hidden}.zt-media-wipe{position:absolute!important;z-index:4!important;inset:-1px!important;background:var(--paper,#f3f1eb)!important;pointer-events:none;transform-origin:right;transition:transform 1.05s var(--zt-ease) .08s!important}.zt-media-visible>.zt-media-wipe{transform:scaleX(0)}.dark-panel .zt-media-wipe{background:#181816!important}.photo-mosaic figure img,.service-scenes figure img,.detail-image img,.labo-cover img{transform:scale(1.06);transition:transform 1.6s var(--zt-ease)}.zt-media-visible img{transform:scale(1)}
.service-detail article,.values article,.price-grid article,.maintenance-grid article,.outcome-grid article,.labo-themes article{transition:background-color .4s var(--zt-ease),transform .4s var(--zt-ease),box-shadow .4s var(--zt-ease)}.values article:hover,.price-grid article:hover,.maintenance-grid article:hover,.outcome-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(24,24,22,.07);position:relative;z-index:2}.service-detail article:after,.labo-themes article:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .65s var(--zt-ease)}.service-detail article,.labo-themes article{position:relative}.service-detail article:hover:after,.labo-themes article:hover:after{transform:scaleX(1)}
.faq-list details{transition:background .35s,padding .45s var(--zt-ease)}.faq-list details[open]{background:rgba(255,255,255,.55);padding:0 1.4rem}.faq-list details>p{animation:ztAnswer .5s var(--zt-ease) both}@keyframes ztAnswer{from{opacity:0;transform:translateY(-8px)}}.contact-form input,.contact-form textarea{transition:border-color .3s,box-shadow .3s,background .3s}.contact-form input:focus,.contact-form textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 7px 0 -6px var(--accent);background:#fff}.zt-magnetic{transform:translate(var(--magnetic-x,0),var(--magnetic-y,0));transition:transform .22s var(--zt-ease)}
.site-header{transition:transform .45s var(--zt-ease),background .35s,box-shadow .35s}.zt-scrolling-down .site-header:not(:hover){transform:translateY(-100%)}body:not(.zt-scrolling-down) .site-header{box-shadow:0 1px 0 rgba(24,24,22,.06)}
@supports(animation-timeline:view()){.photo-mosaic figure:nth-child(2),.service-scenes figure:nth-child(2){animation:ztFloat linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes ztFloat{from{translate:0 20px}to{translate:0 -20px}}.editorial-split img,.detail-image img{animation:ztSubtleZoom linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes ztSubtleZoom{from{scale:1.025}to{scale:1}}}
@media(max-width:800px){.zt-motion-item{transform:translateY(18px);filter:none}.zt-scrolling-down .site-header:not(:hover){transform:none}.photo-mosaic figure:nth-child(2),.service-scenes figure:nth-child(2){animation:none!important}.faq-list details[open]{padding:0 .8rem}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}.zt-motion-item{opacity:1;transform:none;filter:none;transition:none}.zt-media-wipe{display:none}.photo-mosaic figure img,.service-scenes figure img,.detail-image img,.labo-cover img{transform:none;transition:none}.zt-scrolling-down .site-header{transform:none}.zt-magnetic{transform:none!important;transition:none}}
/* Article content and subpage headings stay immediately readable. */
body.zt-no-article-motion .zt-reveal,body.zt-no-article-motion .zt-motion-item,body.zt-subpage h1.zt-motion-item,body.zt-subpage h2.zt-motion-item,body.zt-subpage h3.zt-motion-item,body.zt-subpage h4.zt-motion-item,body.zt-subpage h5.zt-motion-item,body.zt-subpage h6.zt-motion-item{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important;animation:none!important}
body.zt-no-article-motion .article-body *,body.zt-no-article-motion .post-single *,body.zt-no-article-motion .related-grid>*{animation:none!important;transition:none!important}
