:root{--motion-ease:cubic-bezier(.22,1,.36,1);--motion-duration:620ms}

/* Clean labels and alignment after removing decorative counters. */
.hero h1{margin-top:0}.hero-foot{justify-content:flex-end}
.service-description{padding-left:18px}.section-heading>p{margin-top:24px}
.quote-callout h2{margin-top:0}.faq h2{margin-top:0}
.menu-footer a{letter-spacing:0}
.catalog-play::after{content:"";display:block;margin-left:2px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid currentColor}

@media(max-width:700px){
  .service-description{padding-left:12px}.steps>div{display:block}
  .hero-foot{align-items:flex-end}.hero h1{margin-top:0}
}

/* Content stays visible by default, including when JavaScript is unavailable. */
@media(prefers-reduced-motion:no-preference){
  .motion-ready{opacity:1;transform:none;transition:opacity var(--motion-duration) var(--motion-ease) var(--motion-delay,0ms),transform var(--motion-duration) var(--motion-ease) var(--motion-delay,0ms)}
  .motion-ready.motion-pending{opacity:0;transform:translateY(22px)}
  .hero-photo img{animation:cover-settle 1100ms var(--motion-ease) both}
  .hero-copy h1,.hero-description,.hero-actions,.hero-foot{animation:cover-enter 850ms var(--motion-ease) both}
  .hero-description{animation-delay:90ms}.hero-actions{animation-delay:170ms}.hero-foot{animation-delay:230ms}
  .button,.filter{transition:background .2s,color .2s,border-color .2s,transform .25s var(--motion-ease),box-shadow .25s}
  .button:active,.filter:active{transform:translateY(1px)}
  .catalog-open img{transition:transform 750ms var(--motion-ease)}
  .service-description,.faq-list details[open]>p{animation:detail-enter 320ms var(--motion-ease) both}
  .service-list details:not([open]) .service-description{animation:none}
  .text-link,.catalog-video,.developer-credit strong{text-decoration-thickness:1px;transition:color .2s,border-color .2s,text-underline-offset .2s}
  @media(hover:hover) and (pointer:fine){
    .button:hover{transform:translateY(-2px);box-shadow:0 7px 16px #10296614}
    .filter:hover{transform:translateY(-1px)}
    .catalog-card:hover .catalog-open img,.catalog-card:focus-within .catalog-open img{transform:scale(1.035)}
    .developer-credit:hover strong{text-underline-offset:6px}
  }
  @media(max-width:1000px){
    .header nav.is-open>a,.header nav.is-open .menu-footer{animation:menu-enter 420ms var(--motion-ease) both}
    .header nav.is-open>a:nth-of-type(2){animation-delay:35ms}
    .header nav.is-open>a:nth-of-type(3){animation-delay:70ms}
    .header nav.is-open>a:nth-of-type(4){animation-delay:105ms}
    .header nav.is-open .menu-footer{animation-delay:140ms}
  }
}

@keyframes cover-settle{from{transform:scale(1.025)}to{transform:scale(1)}}
@keyframes cover-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes detail-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes menu-enter{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.motion-ready,.motion-pending{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}}
