html{scroll-behavior:smooth;scroll-padding-top:92px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}html.js main>section:not(:first-of-type)>div>*,html.js main>section:not(:first-of-type) .grid>*,html.js main>section:not(:first-of-type) details,html.js main>section:not(:first-of-type) [class*=border-dashed][class*=border-b],html.js body>section>div>*{opacity:0;transform:translateY(28px);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay, 0s);will-change:opacity,transform}html.js main>section:not(:first-of-type)>div>*.is-visible,html.js main>section:not(:first-of-type) .grid>*.is-visible,html.js main>section:not(:first-of-type) details.is-visible,html.js main>section:not(:first-of-type) [class*=border-dashed][class*=border-b].is-visible,html.js body>section>div>*.is-visible{opacity:1;transform:none}@media (max-width: 768px){html.js main>section:not(:first-of-type)>div>*,html.js main>section:not(:first-of-type) .grid>*,html.js main>section:not(:first-of-type) details,html.js main>section:not(:first-of-type) [class*=border-dashed][class*=border-b],html.js body>section>div>*{transform:translateY(18px);transition-duration:.9s}}@media (prefers-reduced-motion: reduce){html.js main>section:not(:first-of-type)>div>*,html.js main>section:not(:first-of-type) .grid>*,html.js main>section:not(:first-of-type) details,html.js main>section:not(:first-of-type) [class*=border-dashed][class*=border-b],html.js body>section>div>*{opacity:1!important;transform:none!important;transition:none!important}}html.js main>section:not(:first-of-type)>div>.text-center,html.js main>section:not(:first-of-type)>div>div:has(>h2),html.js body>section>div>.text-center,html.js body>section>div>div:has(>h2),html.js body>section>div div:has(>h2){transform:translateY(48px);transition-duration:1.4s}html.js main>section:not(:first-of-type)>div>.text-center.is-visible,html.js main>section:not(:first-of-type)>div>div:has(>h2).is-visible,html.js body>section>div>.text-center.is-visible,html.js body>section>div>div:has(>h2).is-visible,html.js body>section>div div:has(>h2).is-visible{transform:translateY(0)}@media (max-width: 768px){html.js main>section:not(:first-of-type)>div>.text-center,html.js main>section:not(:first-of-type)>div>div:has(>h2),html.js body>section>div>.text-center,html.js body>section>div>div:has(>h2),html.js body>section>div div:has(>h2){transform:translateY(28px);transition-duration:1.1s}}header{transition:transform .4s cubic-bezier(.22,1,.36,1);will-change:transform}header.is-hidden{transform:translateY(-100%)!important;transition-duration:.4s!important}@media (prefers-reduced-motion: reduce){header.is-hidden{transform:none!important;transition:none!important}}html.js .lion-pop{opacity:0;transform:scale(.3);transform-origin:center bottom;will-change:opacity,transform}html.js .lion-pop.is-bouncing{animation:lionBounce .8s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes lionBounce{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.08)}80%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){html.js .lion-pop,html.js .lion-pop.is-bouncing{animation:none!important;opacity:1!important;transform:none!important}}html.js .hero-anim{opacity:0;transform:translateY(18px);filter:blur(8px);animation:heroReveal 1s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--hero-delay, 0s);will-change:opacity,transform,filter}@keyframes heroReveal{to{opacity:1;transform:translateY(0);filter:blur(0)}}@media (max-width: 768px){html.js .hero-anim{transform:translateY(12px);filter:blur(6px);animation-duration:.85s}}@media (prefers-reduced-motion: reduce){html.js .hero-anim{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}}.arrow-fx{--arrow-size: 1em;--arrow-gap: .1em;--arrow-duration: .5s;--arrow-ease: cubic-bezier(.16, 1, .3, 1);position:relative;display:inline-block;width:var(--arrow-size);height:var(--arrow-size);overflow:hidden;vertical-align:middle}.arrow-fx--diag{transform:rotate(-45deg)}.arrow-fx__inner{position:relative;display:block;width:var(--arrow-size);height:var(--arrow-size)}.arrow-fx__svg{display:block;width:var(--arrow-size);height:var(--arrow-size)}.arrow-fx__svg:last-child{position:absolute;top:0;left:calc((var(--arrow-size) + var(--arrow-gap)) * -1)}@media (hover: hover){a:hover .arrow-fx__inner,button:hover .arrow-fx__inner{animation:arrowFxSlide var(--arrow-duration) var(--arrow-ease)}}@keyframes arrowFxSlide{to{transform:translate(calc(var(--arrow-size) + var(--arrow-gap)))}}#back-to-top{transition:opacity .4s ease-out,transform .4s ease-out,color .5s cubic-bezier(.25,1,.5,1),border-color .5s cubic-bezier(.25,1,.5,1)}#back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.hover-circle-btn{position:relative;z-index:0;overflow:hidden}@media (any-hover: hover){.hover-circle-btn{transition:color .5s cubic-bezier(.25,1,.5,1),border-color .5s cubic-bezier(.25,1,.5,1)}.hover-circle-btn:hover .hover-circle-bg{scale:1}.hover-circle-btn:hover{border-color:var(--hover-circle-color)}}.hover-circle-bg{display:block;position:absolute;top:0;left:0;z-index:-1;width:600px;height:auto;aspect-ratio:1;background-color:var(--hover-circle-color, currentColor);border-radius:50%;scale:0;transform-origin:center center;margin-top:-300px;margin-left:-300px;transition:scale .5s cubic-bezier(.25,1,.5,1);pointer-events:none}@media (prefers-reduced-motion: reduce){.hover-circle-btn,.hover-circle-bg{transition:none!important}}
