/* Original Sunshine motion system. No reference-site assets or libraries. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1);--page-progress:0;--header-height:87px}
.motion-enabled .site-header:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--accent);transform-origin:left;transform:scaleX(var(--page-progress));pointer-events:none}
.motion-line{display:block;overflow:clip;padding-bottom:.085em;margin-bottom:-.085em}
.motion-line-inner{display:block;transform-origin:0 100%}
.motion-enabled .hero-content>*{animation:none}
.motion-enabled .hero h1 .motion-line-inner{animation:sunshine-line 1.18s var(--motion-ease) both;animation-delay:calc(.16s + var(--line-index,0)*.14s)}
.motion-enabled .hero .eyebrow{animation:sunshine-in .9s var(--motion-ease) .1s both}
.motion-enabled .hero .hero-copy{animation:sunshine-in 1s var(--motion-ease) .38s both}
.motion-enabled .hero .hero-actions{animation:sunshine-in 1s var(--motion-ease) .52s both}
.motion-enabled .hero-image{animation:none;transform:translate3d(0,var(--hero-shift,0px),0) scale(var(--hero-scale,1.045));will-change:transform}
.motion-enabled .hero-content{transform:translate3d(0,var(--hero-copy-shift,0px),0)}
.motion-enabled .hero-bottom{animation:sunshine-in 1.1s var(--motion-ease) .68s both}
.motion-enabled .hero-bottom a>span{display:inline-block;animation:sunshine-scroll 2s ease-in-out 1.5s 2}
.motion-reveal{opacity:0;transform:translate3d(0,32px,0);transition:opacity .85s var(--motion-ease),transform 1.05s var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}
.motion-reveal .motion-line-inner{transform:translateY(105%);transition:transform 1.1s var(--motion-ease);transition-delay:calc(var(--reveal-delay,0ms) + var(--line-index,0)*90ms)}
.motion-reveal.is-visible{opacity:1;transform:none}
.motion-reveal.is-visible .motion-line-inner{transform:none}
.motion-reveal:focus-within{opacity:1;transform:none}
.motion-reveal:focus-within .motion-line-inner{transform:none}
.motion-enabled .company-banner{clip-path:inset(0 var(--banner-inset,0%) round var(--banner-radius,0px));transition:none}
.motion-enabled .company-banner>img{animation:none;transform:translate3d(0,var(--banner-shift,0px),0) scale(1.1);will-change:transform}
.motion-enabled .product-visual img{transition:transform .85s var(--motion-ease),filter .85s var(--motion-ease)}
.motion-enabled .product-tile:hover .product-visual img{transform:scale(1.065);filter:contrast(1.035)}
.circle-arrow{transition:transform .5s var(--motion-ease),background .3s,color .3s,border-color .3s}
.product-tile:hover .circle-arrow{transform:rotate(45deg);background:var(--ink);border-color:var(--ink);color:white}
.button{position:relative;overflow:hidden;isolation:isolate;transition:background .3s,transform .45s var(--motion-ease),box-shadow .45s}
.button:before{content:'';position:absolute;inset:0;background:#ffffff12;transform:translateX(-102%);transition:transform .55s var(--motion-ease);z-index:-1}
.button:hover:before{transform:none}
.text-link .arrow{transition:transform .45s var(--motion-ease)}
.main-nav>a:not(.button):before{content:'';position:absolute;left:0;right:0;bottom:21px;height:1px;background:currentColor;transform-origin:right;transform:scaleX(0);transition:transform .4s var(--motion-ease)}
.main-nav>a:not(.button):hover:before{transform-origin:left;transform:scaleX(1)}
.resource-row{transition:padding .5s var(--motion-ease),color .35s,opacity .85s var(--motion-ease),transform 1.05s var(--motion-ease)}
.resource-row:hover{color:#ad471e}

.motion-paused .motion-reveal{opacity:1;transform:none;transition:none}
.motion-paused .motion-line-inner{transform:none;animation:none!important;transition:none}
.motion-paused .hero-image,.motion-paused .hero-content{transform:none;will-change:auto}
.motion-paused .hero-content>*,.motion-paused .hero-bottom,.motion-paused .hero-bottom a>span{animation:none!important}
.motion-paused .company-banner{clip-path:none}
.motion-paused .company-banner>img{transform:none;animation:none;will-change:auto}
.motion-paused .button,.motion-paused .button:before,.motion-paused .arrow,.motion-paused .circle-arrow,.motion-paused .product-visual img{transition:none}
@keyframes sunshine-line{from{transform:translate3d(0,110%,0) rotate(2deg)}to{transform:none}}
@keyframes sunshine-in{from{opacity:0;transform:translate3d(0,25px,0)}to{opacity:1;transform:none}}
@keyframes sunshine-scroll{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@media(max-width:640px){.motion-enabled .hero-content{transform:none}.motion-enabled .hero-image{transform:scale(1.045)}.motion-enabled .company-banner{clip-path:none}}

@media(prefers-reduced-motion:reduce){
  .motion-reveal,.motion-reveal .motion-line-inner{opacity:1;transform:none;transition:none}
  .hero-content>*,.hero h1 .motion-line-inner,.hero-bottom,.hero-bottom a>span{animation:none!important}
  .motion-enabled .hero-content,.motion-enabled .hero-image,.motion-enabled .company-banner>img{transform:none!important;animation:none!important}
  .motion-enabled .company-banner{clip-path:none!important}
}
