/* Effects only: retain existing measurements, grids, corners, fonts and visible copy. */
:root{--interaction-ease:cubic-bezier(.22,.7,.25,1);--interaction-fast:180ms;--interaction-panel:320ms}
.motion-rail.rail-moving{scroll-snap-type:none!important;scroll-behavior:auto!important}
.motion-rail.rail-dragging,.motion-rail.rail-dragging *{user-select:none;-webkit-user-select:none;cursor:grabbing!important}
.motion-rail img{-webkit-user-drag:none}
.capyme-navigation nav>a,.capyme-navigation summary{position:relative}
.capyme-navigation nav>a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:#046bd2;transform:scaleX(0);transform-origin:left;border-radius:2px;pointer-events:none}
.capyme-navigation nav>a[aria-current="page"]:after{transform:scaleX(1)}
.capyme-navigation details[data-current="true"]>summary{color:#046bd2}
@media(prefers-reduced-motion:no-preference){
 .capyme-navigation nav>a:after{transition:transform var(--interaction-panel) var(--interaction-ease)}
 .capyme-navigation nav>a:hover:after{transform:scaleX(1)}
 .dots button{transition:width var(--interaction-panel) var(--interaction-ease),background-color var(--interaction-fast)}
 .round-control,.gallery-controls button{transition:opacity var(--interaction-fast),background-color var(--interaction-fast),box-shadow var(--interaction-panel),scale var(--interaction-fast)}
 .round-control:disabled{opacity:.38;cursor:default}
 .capyme-secondary:not(.secondary-privacy) main :is(.btn,.small-cta,.example-tabs button,.page-jumps a){transition:color var(--interaction-fast),background-color var(--interaction-fast),box-shadow var(--interaction-panel),transform var(--interaction-panel) var(--interaction-ease),scale var(--interaction-panel) var(--interaction-ease)}
 .capyme-secondary:not(.secondary-privacy) main :is(.card,.team-card,.capy-preview-card){transition:box-shadow var(--interaction-panel) var(--interaction-ease),translate var(--interaction-panel) var(--interaction-ease)}
 .capyme-secondary:not(.secondary-privacy) main .btn:hover{transform:none;scale:1.018}
 .capyme-secondary:not(.secondary-privacy) main .btn:active{scale:.965}
 .capyme-secondary:not(.secondary-privacy) .example-tabs button[aria-pressed="true"]{box-shadow:0 4px 16px #07356416}
 .capyme-secondary:not(.secondary-privacy) .example-tabs button:active,.gallery-controls button:active{scale:.965}
 .capyme-secondary:not(.secondary-privacy) main :is(.page-jumps a,.small-cta):hover{box-shadow:0 4px 15px #07356412}
 .capyme-secondary:not(.secondary-privacy) .capy-preview-open,.capyme-secondary:not(.secondary-privacy) [data-preview-open]{transition:background-color var(--interaction-fast),box-shadow var(--interaction-panel),scale var(--interaction-panel) var(--interaction-ease)}
 .capyme-secondary:not(.secondary-privacy) [data-preview-open]:active{scale:.97}
 .capyme-secondary:not(.secondary-privacy) :is(dialog.modal,dialog.secondary-dialog)::backdrop{background:#09233a80;backdrop-filter:blur(8px)}
 .capyme-secondary:not(.secondary-privacy) :is(.modal .close,.secondary-dialog-close){transition:background-color var(--interaction-fast),scale var(--interaction-fast)}
 .capyme-secondary:not(.secondary-privacy) :is(.modal .close,.secondary-dialog-close):hover{scale:1.08}
}
@media(hover:hover) and (pointer:fine){.motion-rail.rail-scrollable{cursor:grab}.motion-rail :is(a,button,summary){cursor:pointer}}
/* Cross-document transitions have the same timing without delaying a link click. */
main{view-transition-name:capyme-content}
.capyme-navigation{view-transition-name:capyme-navigation}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-group(capyme-navigation){animation-duration:var(--interaction-fast)}
::view-transition-old(capyme-navigation),::view-transition-new(capyme-navigation){animation:none}
::view-transition-old(capyme-content){animation:capyme-content-out 180ms ease both}
::view-transition-new(capyme-content){animation:capyme-content-in 320ms var(--interaction-ease) both}
@keyframes capyme-content-out{to{opacity:0}}
@keyframes capyme-content-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
 .motion-rail{scroll-behavior:auto!important}
}
html[data-motion-user-paused="true"]::view-transition-group(*),html[data-motion-user-paused="true"]::view-transition-old(*),html[data-motion-user-paused="true"]::view-transition-new(*){animation:none!important}
@media print{.capyme-navigation nav>a:after{display:none}}
