/* SoloMove 3.1 — alternating editorial service rows and accessible scroll reveals.
   Deliberately separate from v3.0 visual corrections so existing CRM functionality
   and user-selected service photographs are not affected. */
@media (min-width: 761px) {
  .sm-v21-home .sm-v21-service-row:nth-child(odd) {
    grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);
  }
  .sm-v21-home .sm-v21-service-row:nth-child(even) {
    grid-template-columns:minmax(0,.55fr) minmax(0,.45fr);
    padding-inline:clamp(14px,2vw,30px);
    background:linear-gradient(110deg,rgba(239,246,244,.78),rgba(249,251,250,.45));
    border-radius:18px;
  }
  .sm-v21-home .sm-v21-service-row:nth-child(odd) > .sm-v21-service-photo,
  .sm-v21-home .sm-v21-service-row:nth-child(even) > .sm-v21-service-copy { order:1; }
  .sm-v21-home .sm-v21-service-row:nth-child(odd) > .sm-v21-service-copy,
  .sm-v21-home .sm-v21-service-row:nth-child(even) > .sm-v21-service-photo { order:2; }
}
@media (max-width:760px) {
  .sm-v21-home .sm-v21-service-row:nth-child(n) {
    grid-template-columns:minmax(0,1fr);
    background:transparent;
    padding-inline:0;
  }
  .sm-v21-home .sm-v21-service-row:nth-child(n) > .sm-v21-service-photo {order:0;}
  .sm-v21-home .sm-v21-service-row:nth-child(n) > .sm-v21-service-copy {order:1;}
}
/* Stronger visual rhythm without sacrificing the original equal-sized photos. */
.sm-v21-home .sm-v21-service-row{scroll-margin-top:96px}
.sm-v21-home .sm-v21-service-photo{position:relative;box-shadow:0 16px 36px rgba(18,47,55,.09)}
.sm-v21-home .sm-v21-service-photo::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(140deg,rgba(255,255,255,.14),transparent 65%);
  opacity:0;transition:opacity .38s ease;
}
.sm-v21-home .sm-v21-service-row:hover .sm-v21-service-photo::after{opacity:1}
.sm-v21-home .sm-v21-service-photo img{transition:transform .55s cubic-bezier(.2,.75,.25,1)!important}
.sm-v21-home .sm-v21-service-row:hover .sm-v21-service-photo img{transform:scale(1.025)!important}
.sm-v21-home .sm-ref-heading h2,.sm-v21-home .sm-ref-block h2{max-width:900px}
.sm-v21-home .sm-ref-kicker{color:var(--sm-ref-accent,#c48b43)}
/* Progressive enhancement: content is always visible if scripts are blocked. */
@media (prefers-reduced-motion:no-preference) {
  html.sm-v31-motion-ready .sm-v21-home [data-sm-v31-motion]:not(.sm-v31-visible) {
    opacity:0;
    transform:translate3d(var(--sm-v31-x,0px),var(--sm-v31-y,26px),0);
  }
  html.sm-v31-motion-ready .sm-v21-home [data-sm-v31-motion] {
    transition:opacity .72s cubic-bezier(.2,.68,.25,1),
               transform .78s cubic-bezier(.18,.7,.22,1);
    transition-delay:var(--sm-v31-delay,0ms);
    will-change:auto;
  }
  html.sm-v31-motion-ready .sm-v21-home [data-sm-v31-motion].sm-v31-visible {
    opacity:1;transform:translate3d(0,0,0);
  }
  .sm-v21-home [data-sm-v31-motion="left"] {--sm-v31-x:-46px;--sm-v31-y:0px}
  .sm-v21-home [data-sm-v31-motion="right"] {--sm-v31-x:46px;--sm-v31-y:0px}
  .sm-v21-home [data-sm-v31-motion="up"] {--sm-v31-x:0px;--sm-v31-y:27px}
  .sm-v21-home [data-sm-v31-motion="soft"] {--sm-v31-x:0px;--sm-v31-y:15px}
}
@media (max-width:760px) and (prefers-reduced-motion:no-preference) {
 .sm-v21-home [data-sm-v31-motion="left"]{--sm-v31-x:-19px;--sm-v31-y:8px}
 .sm-v21-home [data-sm-v31-motion="right"]{--sm-v31-x:19px;--sm-v31-y:8px}
}
@media (prefers-reduced-motion:reduce) {
 html .sm-v21-home [data-sm-v31-motion] {
   opacity:1!important;transform:none!important;
   transition:none!important;animation:none!important;
 }
 .sm-v21-home .sm-v21-service-photo img,
 .sm-v21-home .sm-v21-service-photo::after{transition:none!important}
}
