:root{--luxury-ease:cubic-bezier(.22,1,.36,1)}
/* One brief highlight along a section edge; content stays visible at rest. */
.motion-line-owner{position:relative}
.motion-line-window{position:absolute;inset:0 0 auto;z-index:3;height:2px;overflow:hidden;pointer-events:none;user-select:none}
.motion-section-light{position:absolute;left:0;top:0;width:29%;max-width:350px;height:1px;opacity:0;background:linear-gradient(90deg,transparent,#c8a66b45 25%,#f8e3b7bd 56%,#bfa06a45 80%,transparent);filter:drop-shadow(0 0 4px #d5b3783b)}
/* Reflected light lives on the edge, rather than washing over the photograph. */
.motion-metal-static{position:relative}
.motion-metal-reflection{position:absolute;inset:0;z-index:6;box-sizing:border-box;padding:1px;border-radius:inherit;pointer-events:none;user-select:none;opacity:0;background:radial-gradient(170px circle at var(--metal-x,50%) var(--metal-y,0%),#ffe8bfb8,transparent 78%);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-clip:content-box,border-box;mask-composite:exclude;transition:opacity .42s var(--luxury-ease)}
.motion-metal.is-metal-lit>.motion-metal-reflection{opacity:1}
.motion-metal:focus-visible>.motion-metal-reflection,.motion-metal:focus-within>.motion-metal-reflection{opacity:1;background:linear-gradient(135deg,#ffe6b9ba,transparent 34%,transparent 70%,#e4c59155)}
.host-grid .host-entry{transition-timing-function:var(--luxury-ease);transition-duration:.38s}
.showroom-shot{transition-timing-function:var(--luxury-ease);transition-duration:.5s}
.action-link,.action-link .action-arrow,.portfolio-tab,.hero-slide-control,.business-copy{transition-timing-function:var(--luxury-ease)}
.action-link:hover::before,.action-link:focus-visible::before{animation-duration:1.05s;opacity:.65}
/* A fine line marks the seven-second portrait cadence. */
.hero-slideshow .hero-slide{transition:opacity 1.35s var(--luxury-ease),visibility 1.35s}
.hero-dot::after{content:"";position:absolute;left:1px;right:1px;top:calc(50% - 1px);height:2px;opacity:0;background:linear-gradient(90deg,#d1af75,#f8e4bb);box-shadow:0 0 7px #ddba7752;transform:scaleX(0);transform-origin:left center;pointer-events:none}
.hero-stage[data-autoplay-state=playing] .hero-dot[aria-current=true]::before{background:#d9bf9547;box-shadow:none;transform:none}
.hero-stage[data-autoplay-state=playing] .hero-dot[aria-current=true]::after{opacity:1;animation:luxury-hero-cadence 7s linear both}
@keyframes luxury-hero-cadence{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes luxury-dialog-in{from{opacity:.8;transform:translateY(7px) scale(.992)}to{opacity:1;transform:none}}
@keyframes luxury-backdrop-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:no-preference){
 .portrait-dialog[open],.evidence-dialog[open]{animation:luxury-dialog-in .38s var(--luxury-ease)}
 .portrait-dialog[open]::backdrop,.evidence-dialog[open]::backdrop{animation:luxury-backdrop-in .35s ease-out}
}
@media(hover:none),(pointer:coarse){.motion-metal-reflection{display:none}}
@media(prefers-reduced-motion:reduce){
 .motion-line-window,.motion-metal-reflection{display:none}
 .hero-slideshow .hero-slide,.host-grid .host-entry,.showroom-shot,.action-link,.action-link .action-arrow,.portfolio-tab,.hero-slide-control,.business-copy{transition:none}
 .hero-dot::after{animation:none!important;display:none}
 .hero-stage[data-autoplay-state=playing] .hero-dot[aria-current=true]::before{background:#ffe2ac;transform:none}
 .action-link:hover::before,.action-link:focus-visible::before{animation:none}
 .portrait-dialog[open],.evidence-dialog[open],.portrait-dialog[open]::backdrop,.evidence-dialog[open]::backdrop{animation:none}
}
