/* Content stays visible. The browser enhances navigation without a delayed redirect. */
html{scrollbar-width:thin;scrollbar-color:#b8b0c0 transparent}
html:has(.render-page){scrollbar-color:#65586f transparent}html:has(.d-nav){scrollbar-color:#8b9b90 transparent}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#b8b0c0;border:2px solid transparent;background-clip:padding-box;border-radius:12px}
.nav nav a{transition:color .16s ease}.nav nav a:not(.nav-contact){position:relative}
.nav nav a:not(.nav-contact)::after{content:'';position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .16s ease}
.nav nav a:hover::after,.nav nav a:focus-visible::after,.nav nav a[aria-current="page"]::after{transform:scaleX(1)}
.button,.d-button,.service-choice,.demo-preview,.text-link,.contact-email,.render-viewer button{transition:background-color .16s ease,color .16s ease,border-color .16s ease}
.button:active,.d-button:active,.service-choice:active{transform:translateY(1px)}
.render-image img{transition:filter .2s ease}.render-image:hover img{filter:brightness(1.055)}
.faq-items summary::after{transition:transform .24s ease}
.footer{flex-wrap:wrap}.footer>a{min-height:44px;display:inline-flex;align-items:center;gap:10px}
.motion-toggle{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 12px;border:1px solid currentColor;border-radius:3px;background:transparent;color:inherit;font:inherit;font-size:12px;cursor:pointer}
.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:color-mix(in srgb,currentColor 7%,transparent)}
.motion-toggle:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@view-transition{navigation:auto}
::view-transition-group(root){animation-duration:.44s}
::view-transition-old(root){animation:page-out .44s cubic-bezier(.25,.75,.25,1) both;mix-blend-mode:normal}
::view-transition-new(root){animation:page-in .44s cubic-bezier(.25,.75,.25,1) both;mix-blend-mode:normal}
@keyframes page-out{to{opacity:0;transform:translateY(-10px)}}
@keyframes page-in{from{opacity:0;transform:translateY(18px)}}
html[data-motion="reduced"]{scroll-behavior:auto!important}
html[data-motion="reduced"] *,html[data-motion="reduced"] *::before,html[data-motion="reduced"] *::after{transition:none!important}
html[data-motion="reduced"]::view-transition-group(root),html[data-motion="reduced"]::view-transition-old(root),html[data-motion="reduced"]::view-transition-new(root){animation:none!important}
@media(prefers-reduced-motion:reduce){
html:not([data-motion="full"]){scroll-behavior:auto!important}
html:not([data-motion="full"]) *,html:not([data-motion="full"]) *::before,html:not([data-motion="full"]) *::after{transition:none!important}
html:not([data-motion="full"])::view-transition-group(root),html:not([data-motion="full"])::view-transition-old(root),html:not([data-motion="full"])::view-transition-new(root){animation:none!important}
}
