/* Motion and layout stability; preserve the approved visual identity. */
:root{--ui-ease:cubic-bezier(.22,.7,.2,1)}
.photo-card-surface{transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .38s var(--ui-ease);transform-style:preserve-3d}
.photo-card-surface .card-turn{transform:rotateY(0deg);transition:transform .85s var(--ui-ease);transform-style:preserve-3d}
.photo-card-surface.is-back .card-turn{transform:rotateY(180deg)}
.photo-card-surface .engraved-face{backface-visibility:hidden;-webkit-backface-visibility:hidden}
#tap-demo .phone-idle,#tap-demo .phone-live,#tap-demo .simulated-save{transition:opacity .42s ease,transform .62s var(--ui-ease),visibility 0s linear .42s;visibility:hidden;opacity:0;pointer-events:none;transform:translate3d(0,7px,0)}
#tap-demo [data-phase=idle] .phone-idle,#tap-demo [data-phase=tap] .phone-idle,#tap-demo [data-phase=connect] .phone-live,#tap-demo [data-phase=save] .simulated-save{visibility:visible;opacity:1;transform:translate3d(0,0,0);transition-delay:0s}
#tap-demo [data-phase=idle] .phone-idle,#tap-demo [data-phase=connect] .phone-live,#tap-demo [data-phase=save] .simulated-save{pointer-events:auto}
#tap-demo [data-phase=tap] .phone-idle{opacity:.65}
#tap-demo .tap-card{transition:transform .95s var(--ui-ease),box-shadow .4s ease}
#tap-demo .photo-card-surface{transition:transform .38s var(--ui-ease)}
#tap-demo .device-extra{position:absolute;left:0;right:0;bottom:0;max-height:95px;overflow:auto;box-sizing:border-box;padding:12px;background:#141416;border:1px solid #3b3b40;border-radius:8px;margin:0;z-index:6}
#tap-demo .tap-demo-toolbar>p{min-height:34px;display:flex;align-items:center}
#tap-demo .demo-control-deck{overflow-anchor:none}
.preview-identity{min-height:245px}
.preview-status{min-height:42px}
.profession-actions{min-height:201px;align-content:start}
.profession-detail{min-height:116px!important}
.profession-preview{overflow-anchor:none}
.solution-description{min-height:310px}
.solution-device{overflow-anchor:none}
.solution-phone-rows{min-height:177px}
.how-mini-content{animation:none!important}
.how-mini-card{transition:transform .7s var(--ui-ease)}
.preview-editor input,.preview-editor select,.setup-planner input,.setup-planner select,.setup-planner textarea,.contact-form input,.contact-form select,.contact-form textarea{transition:border-color .22s ease,background-color .22s ease,box-shadow .22s ease}
.solution-tabs button,.how-steps button,.preview-quick button,.profession-actions button,.profile-quick-actions button,.device-row,.button,.luxury-inspect-controls button{transition:color .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease}
@media(max-width:640px){
 #navigation{display:flex;flex-direction:column;align-items:stretch;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .25s ease,transform .35s var(--ui-ease),visibility 0s linear .35s}
 #navigation.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
 .menu-toggle span{transition:transform .28s var(--ui-ease)}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
 .solution-description{min-height:255px}
 #tap-demo .tap-demo-toolbar>p{min-height:32px}
}
@media(prefers-reduced-motion:reduce){
 .photo-card-surface,.photo-card-surface .card-turn,#tap-demo *,#tap-demo *:before,#tap-demo *:after,#navigation,.menu-toggle span,.how-mini-card,.solution-tabs button,.how-steps button,.profession-actions button{transition:none!important;animation:none!important}
}
dialog::backdrop{backdrop-filter:blur(3px)}
