html{scroll-padding-top:24px}
button,.button,.nav-cta,nav a,.stock-tabs a{transition:background-color 140ms ease,color 140ms ease,box-shadow 140ms ease,transform 140ms ease}
button:active,.button:active,.nav-cta:active{transform:translateY(1px)}
input,select,textarea{transition:border-color 140ms ease,box-shadow 140ms ease}
@media(hover:hover){.crop,.service,.director-card{transition:transform 180ms ease,box-shadow 180ms ease}.crop:hover,.service:hover,.director-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #21183f0d}}
main h1[tabindex="-1"]:focus{outline:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

.nav .nav-links{gap:10px}
.nav .nav-links>a,.nav .mobile-menu summary,.nav .mobile-menu .menu-items a{background:#8670ff;color:#21183f;border:1px solid #8670ff;border-radius:10px;padding:11px 14px;white-space:nowrap;text-decoration:none;min-height:44px}
.nav .nav-links>a:hover,.nav .mobile-menu summary:hover,.nav .mobile-menu .menu-items a:hover{background:#7660ef;border-color:#7660ef;opacity:1}
.nav .mobile-menu[open] summary{background:#7660ef;color:#21183f}
.nav .mobile-menu .menu-items a+a{margin-top:7px}
#page-scroll-controls{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:1000;display:flex;flex-direction:column;gap:8px}
#page-scroll-controls button{display:block;min-width:88px;min-height:44px;margin:0;padding:10px 14px;background:#6a4eff;color:white;border:1px solid #6a4eff;border-radius:10px;font:600 14px system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 14px #21183f26}
#page-scroll-controls button:hover{background:#5739e6}
#page-scroll-controls button:focus-visible{outline:3px solid #21183f;outline-offset:3px}
@media(min-width:951px) and (max-width:1100px){.nav .nav-links{gap:6px}.nav .nav-links>a{padding:11px 9px;font-size:12px}}
@media(max-width:600px){.nav .nav-links{gap:7px}.nav .nav-links>a,.nav .mobile-menu summary{padding:10px 11px;font-size:12px}#page-scroll-controls{right:12px;bottom:12px}#page-scroll-controls button{min-width:78px;padding:9px 11px;font-size:12px}}

.wrap>.nav{height:auto;min-height:112px;padding-top:12px;padding-bottom:12px;gap:24px}
.nav .nav-links{flex:1;flex-wrap:wrap;justify-content:flex-end;row-gap:8px}
.nav .mobile-menu .menu-items{max-height:70vh;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:600px){.wrap>.nav{min-height:82px;padding-top:8px;padding-bottom:8px;gap:12px}}
