/* One motion language: gentle editorial entrances, immediate controls.
   Native scrolling is preserved; there is no wheel interception or scroll hijacking. */
:root{--motion-out:cubic-bezier(.23,1,.32,1);--motion-travel:cubic-bezier(.65,0,.35,1)}
.model-showcase{margin:0 0 22px;position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,1fr);min-height:420px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:radial-gradient(ellipse at 20% 50%,#51422b44,transparent 75%),#11100e}
.model-showcase-images{position:relative;min-width:0;height:420px;background:#090908}
.model-showcase-images img{position:absolute;inset:0;object-fit:contain;opacity:0;transition:opacity 400ms ease;pointer-events:none}
.model-showcase-images img.is-active{opacity:1}
.model-showcase figcaption{padding:35px;display:flex;flex-direction:column;justify-content:center;gap:25px}
.showcase-title{font-size:clamp(27px,3.2vw,50px);line-height:1.15;letter-spacing:-.025em;text-transform:uppercase;color:var(--gold)}
.showcase-hint{font-size:13px;line-height:1.8;color:#bdb6aa;max-width:250px}
.photo-front img[data-media="connection"]{object-position:55% 50%}
.model>img[data-media="space"]{object-position:50% 68%}.model>img[data-media="brunch"]{object-position:center}.model>img[data-media="complete"]{object-position:53% center}
.keyboard-input .model-showcase-images img,.motion-paused .model-showcase-images img{transition:none}
@media(max-width:760px){.model-showcase{grid-template-columns:1fr;min-height:0}.model-showcase-images{height:350px}.model-showcase figcaption{padding:22px;gap:12px}.model-showcase figcaption .eyebrow{font-size:8px}.showcase-title{font-size:25px}.showcase-hint{font-size:11px;max-width:none}}
.motion-enabled .reveal{opacity:0;translate:0 18px;transition:opacity 700ms var(--motion-out) var(--reveal-delay,0ms),translate 850ms var(--motion-out) var(--reveal-delay,0ms)}
.motion-enabled .reveal.visible{opacity:1;translate:0 0}
.motion-enabled .photo-stack.reveal{translate:0 24px}
.motion-enabled .photo-stack.reveal.visible{translate:0 0}
.benefit,.motion-enabled .benefit.reveal{transition:flex 420ms var(--motion-out),transform 300ms var(--motion-out),opacity 650ms var(--motion-out) var(--reveal-delay,0ms),translate 750ms var(--motion-out) var(--reveal-delay,0ms)}
.benefit{min-height:260px;background:linear-gradient(#0c0c0bba,#0c0c0bf2),var(--card-image) center/cover}
.benefit:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,#c6a27833,#9d7e5d18,#19181600);opacity:0;transition:opacity 300ms ease}
.benefit.is-active{background:linear-gradient(#0c0c0bba,#0c0c0bf2),var(--card-image) center/cover;transform:translateY(-6px)}
.benefit.is-active:before{opacity:1}
.benefit-detail{position:absolute;left:0;right:0;top:80px}
.model,.motion-enabled .model.reveal{transition:flex 460ms var(--motion-out),opacity 650ms var(--motion-out) var(--reveal-delay,0ms),translate 750ms var(--motion-out) var(--reveal-delay,0ms)}
.model-detail{animation:none}
.model>img{transition:opacity 420ms ease,transform 900ms var(--motion-out)}
.model-trigger .model-title,.model-trigger>.eyebrow{transition:opacity 180ms ease}
.gallery-photo{position:relative;min-width:0;overflow:hidden}
.gallery-photo:after{content:'';position:absolute;inset:0;background:#090908;opacity:.52;transition:opacity 1000ms var(--motion-travel);pointer-events:none}
.gallery-photo:has(.is-active):after{opacity:.06}
.gallery-image,.gallery-image.is-active{filter:saturate(.85);transform:scale(1.035);transition:transform 4500ms linear}
.gallery-image.is-active{transform:scale(1.07)}
.gallery-lens{backdrop-filter:none;transition:transform 1250ms var(--motion-travel);will-change:transform}
.gallery-lens i{animation-duration:12s}
.gallery-stage{touch-action:pan-y}
.photo-front{animation-duration:14s}.contact-orb{animation-duration:12s}.rail-line i{animation:none;width:32%}
.timepiece{animation:none}.clock-hand{animation-duration:26s}
.glass-ribbon{animation:none}.is-inview .glass-ribbon{animation:ribbon 24s ease-in-out infinite}
.scene{border-bottom-color:transparent}
.scene:not(.hero):not(.spaces):before{content:'';position:absolute;left:0;right:0;top:0;height:80px;background:linear-gradient(#09090866,transparent);pointer-events:none;z-index:1}
.pill,.arrow-circle,.menu-toggle,.gallery-dots button,footer button{transition:background 180ms ease,transform 160ms var(--motion-out),color 180ms ease}
.pill:active,.menu-toggle:active,.gallery-dots button:active,footer button:active{transform:scale(.97)}
.next-link:active .arrow-circle{transform:scale(.94)}
.toast{transition:opacity 200ms ease,transform 240ms var(--motion-out)}
.metric-number{font-variant-numeric:tabular-nums}
.mobile-nav{transform-origin:top right}
.motion-paused .reveal{opacity:1;translate:none;transition:none}
.motion-paused .gallery-lens,.motion-paused .gallery-image,.motion-paused .gallery-photo:after{transition:none}
.keyboard-input{scroll-behavior:auto}
.keyboard-input .benefit,.keyboard-input .model,.keyboard-input .gallery-lens,.keyboard-input .gallery-image,.keyboard-input .gallery-photo:after{transition:none!important}
@media(hover:none){.next-link:hover .arrow-circle{transform:none}.contact-orb:hover i{inset:18px}.pill:hover{box-shadow:none}}
@media(max-width:760px){
  .motion-enabled .reveal{translate:0 12px;transition-duration:500ms,650ms}
  .motion-enabled .reveal.visible{translate:0 0}
  .benefit{min-height:180px}.benefit.is-active{min-height:225px;transform:none}
  .benefit-detail{top:75px}
  .model,.motion-enabled .model.reveal{transition:opacity 500ms var(--motion-out),translate 650ms var(--motion-out)}
  .gallery-lens{transition-duration:900ms}
  .glass-ribbon,.photo-front,.contact-orb{animation:none!important}
  .model-detail{backdrop-filter:blur(10px)}
  .motion-paused .reveal{translate:none}
}
@media(prefers-reduced-motion:reduce){
  .motion-enabled .reveal{opacity:1;translate:none}
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
