:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);--motion-press:160ms;--motion-ui:240ms;--motion-reveal:600ms}
@keyframes native-reading-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@supports(animation-timeline:scroll(root block)){html[data-motion=full] .reading-progress{animation:native-reading-progress 1s linear both;animation-timeline:scroll(root block)}}
/* A single continuous surface bridges independent documents. Content is never
   hidden unless JS has already started an animation; failed JS leaves it usable. */
.page-curtain{position:fixed;inset:0;z-index:95;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:center;pointer-events:none;transform:translateY(100%);contain:paint}
.curtain-wordmark{font:clamp(38px,8vw,100px)/1 Arial,sans-serif;letter-spacing:.14em;font-weight:500}.curtain-wordmark small{display:block;font:12px/1.4 var(--font);letter-spacing:.32em;margin-top:24px;text-align:center;color:#aec5d1}
html[data-arriving] .page-curtain{transform:translateY(0)}
.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:90;background:var(--blue);transform:scaleX(0);transform-origin:left;pointer-events:none}
.headline-mask{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}.headline-line{display:block}
.hero-copy h1{line-height:1.34;letter-spacing:-.025em}.hero-products{isolation:isolate}.hero-product{position:relative;overflow:hidden}.hero-product:after{content:'';width:1em;height:1em;background:currentColor;-webkit-mask:url('assets/ui-arrow-ne.svg') center/contain no-repeat;mask:url('assets/ui-arrow-ne.svg') center/contain no-repeat;position:absolute;right:14px;top:10px;color:var(--blue);font-size:22px;opacity:0;transform:translate(-6px,6px);transition:transform var(--motion-ui) var(--ease-out),opacity var(--motion-ui) var(--ease-out)}
.hero-product img,.lyNyPro_img img,.lyIdxAb_pic img,.lyIdxNewTj_img img,.NyAboutPart5_img img,.search-results img{transition:transform var(--motion-reveal) var(--ease-out)}
.lyNyPro_img,.lyIdxAb_pic,.lyIdxNewTj_img,.NyAboutPart5_img{overflow:hidden}
.hero-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:26px;color:var(--muted);font-size:11px;letter-spacing:.09em}.hero-foot>span{font-family:Arial,sans-serif}.scroll-cue{display:inline-flex;gap:16px;align-items:center;min-height:44px}.scroll-cue:before{content:'';width:38px;height:1px;background:var(--blue);transform-origin:left;transition:transform var(--motion-ui) var(--ease-out)}.scroll-cue span{display:inline-block;transition:transform var(--motion-ui) var(--ease-out)}
.btn,.nav-contact,.gallery-thumb{transition:transform var(--motion-press) var(--ease-out),background-color var(--motion-ui) ease,color var(--motion-ui) ease,border-color var(--motion-ui) ease}.btn:active,.nav-contact:active,.gallery-thumb:active{transform:scale(.97)}
.btn span,.nav-contact span{display:inline-block;transition:transform var(--motion-ui) var(--ease-out)}
.site-nav>a:after{transform-origin:left;transition:transform var(--motion-ui) var(--ease-out)}
.lyNyPro_name,.lyIdxNew_name,.lyIdxNewTj_name,.footer-links a{transition:color 160ms ease}
.menu-toggle span{transition:transform var(--motion-ui) var(--ease-out)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.site-header{transition:box-shadow var(--motion-ui) ease}.site-header[data-scrolled]{box-shadow:0 8px 30px #0c28380a}
html[data-input=keyboard] .site-nav,html[data-input=keyboard] .site-nav>a,html[data-input=keyboard] .menu-toggle span{transition:none}
@media(hover:hover) and (pointer:fine){
 .hero-product:hover:after{opacity:1;transform:translate(0,0)}
 .hero-product:hover img,.hero-product:focus-visible img{transform:scale(1.045)}
 .lyNyPro_img a:hover img,.lyIdxAb_pic a:hover img,.lyIdxNewTj_img a:hover img,.NyAboutPart5_img a:hover img,.search-results a:hover img{transform:scale(1.035)}
 .btn:hover span,.nav-contact:hover span{transform:translateX(4px)}
 .scroll-cue:hover:before{transform:scaleX(1.3)}.scroll-cue:hover span{transform:translateY(3px)}
}
@media(max-width:700px){
 .hero-foot{padding-bottom:15px;font-size:10px}.hero-foot>span{display:none}.hero-copy h1{line-height:1.35}
 .site-nav{display:flex;flex-direction:column;visibility:hidden;opacity:0;transform:translateY(-12px);transform-origin:top right;pointer-events:none;transition:transform var(--motion-ui) var(--ease-out),opacity 180ms var(--ease-out),visibility 0s 240ms}
 .site-nav.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto;transition-delay:0s}
 .site-nav>a{opacity:0;transform:translateY(-6px);transition:opacity 180ms var(--ease-out),transform var(--motion-ui) var(--ease-out)}
 .site-nav.open>a{opacity:1;transform:translateY(0)}
 .site-nav.open>a:nth-child(2){transition-delay:30ms}.site-nav.open>a:nth-child(3){transition-delay:60ms}.site-nav.open>a:nth-child(4){transition-delay:90ms}.site-nav.open>a:nth-child(5){transition-delay:120ms}.site-nav.open>a:nth-child(6){transition-delay:150ms}.site-nav.open>a:nth-child(7){transition-delay:180ms}
}
html[data-motion=reduced]{scroll-behavior:auto}
html[data-motion=reduced] .page-curtain,html[data-motion=reduced] .reading-progress{display:none}
html[data-motion=reduced] .hero-product:after{transform:none}
html[data-motion=reduced] .hero-product img,html[data-motion=reduced] .lyNyPro_img img,html[data-motion=reduced] .lyIdxAb_pic img,html[data-motion=reduced] .lyIdxNewTj_img img,html[data-motion=reduced] .NyAboutPart5_img img,html[data-motion=reduced] .search-results img{transform:none!important}
html[data-motion=reduced] .site-nav,html[data-motion=reduced] .site-nav>a,html[data-motion=reduced] .btn,html[data-motion=reduced] .nav-contact,html[data-motion=reduced] .gallery-thumb,html[data-motion=reduced] .scroll-cue span{transition:none;transform:none}
@media(prefers-reduced-motion:reduce){html:not([data-motion=full]){scroll-behavior:auto}html:not([data-motion=full]) *{transition:none!important}html:not([data-motion=full]) .page-curtain{display:none}}
