/* Motion is confined to the homepage; all content is visible without JavaScript. */
.home-page .hero h1 .hero-line{display:inline-block;color:inherit}
.home-page .hero h1 .hero-line--accent{color:var(--red)}
.page-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;pointer-events:none}
@media(prefers-reduced-motion:no-preference){
  .home-page .button svg,.home-page .text-link span{transition:transform .25s cubic-bezier(.22,1,.36,1)}
  .home-page .duration-control button{transition:background .2s,color .2s,box-shadow .2s}
  .home-page .hero-photo,.home-page .small-photo{transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .4s}
  .home-page .package-card{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s,border-color .3s}
  .home-page .work-image{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s}
  .home-page .photo-expand,.home-page .feature-icon svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}
  .home-page .photo-dialog[open]{animation:whoots-dialog-arrive .24s cubic-bezier(.22,1,.36,1)}
  .home-page .photo-dialog[open]::backdrop{animation:whoots-backdrop-arrive .2s ease-out}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .home-page .button:hover svg{transform:translateX(4px)}
  .home-page .text-link:hover span{transform:translate(3px,-3px)}
  .home-page .package-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #30281f10;border-color:#cfa28c}
  .home-page .work-item:hover .work-image{transform:translateY(-4px);box-shadow:0 12px 24px #30281f15}
  .home-page .work-item:hover .photo-expand{transform:rotate(-8deg) scale(1.08)}
  .home-page .hero-photo:hover{transform:translateY(-4px) rotate(-3deg);box-shadow:0 16px 30px #30281f20}
  .home-page .small-photo:hover{transform:translateY(-4px) rotate(6deg);box-shadow:0 16px 30px #30281f20}
  .home-page .experience-points>div:hover .feature-icon svg{transform:rotate(-8deg)}
}
@media(prefers-reduced-motion:reduce){.page-progress{display:none}}
@keyframes whoots-dialog-arrive{from{opacity:.2;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@keyframes whoots-backdrop-arrive{from{opacity:.2}to{opacity:1}}
