/* Desktop-only storytelling; the phone retains its native scroll composition. */
@media(min-width:1000px) and (hover:hover) and (pointer:fine){
 #home{transform-origin:center top}
 #services{background:#fffdfb;padding-bottom:0}
 .services-scene{padding:64px 0 72px;background:#fffdfb}
 #services .section-bar{padding-top:0;padding-bottom:36px}
 #services .carousel-card{min-height:500px}
 #services .card-shader-slot{height:210px;flex-basis:210px}
 #services .card-copy{padding:26px}
 .desktop-motion #services{overflow:clip}
 .desktop-motion .carousel-card{transition:none}
 .desktop-motion .about-section{padding-top:110px;padding-bottom:110px}
 .desktop-motion .steps-section{overflow:clip}
 .desktop-motion .steps-content{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(64px,9vw,144px);align-items:start;padding-top:112px;padding-bottom:112px}
 .desktop-motion .steps-content>div{position:sticky;top:100px}
 .desktop-motion .steps-content dl{display:flex;flex-direction:column;gap:0;position:relative;padding-left:32px}
 .desktop-motion .steps-content dl:before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#9d7987;transform:scaleY(var(--journey-progress,0));transform-origin:top}
 .desktop-motion .steps-content dl>div{padding:30px 0 38px;border-top:1px solid #75646b30}
 .desktop-motion .steps-content dl>div+div{margin-top:22px}
 .desktop-motion .steps-content dt{flex-direction:row;align-items:center;gap:20px}
 .desktop-motion .steps-content dd{max-width:45ch;margin-top:18px}
 .desktop-motion .faq-section{padding-top:110px;padding-bottom:110px}
 .desktop-motion .contact-section{padding-top:110px;padding-bottom:110px}
}
@media(min-width:1000px) and (max-height:849px){
 .services-scene{padding-top:56px;padding-bottom:64px}
 #services .card-shader-slot{height:180px;flex-basis:180px}
 #services .carousel-card{min-height:460px}
}

/* Let the browser own the hold: resize-safe and no synthetic pin spacers. */
@media(min-width:1200px) and (min-height:920px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .desktop-motion #services{position:relative}
 .desktop-motion .services-scene{position:sticky;top:24px}
 .desktop-motion #services:after{content:'';display:block;height:48vh}
}