@property --spot{syntax:"<number>";inherits:false;initial-value:0}:is([data-home],[data-page]){--home-ease:cubic-bezier(.16, 1, .3, 1);--home-scroll-ease:cubic-bezier(.33, 1, .68, 1)}:is([data-home],[data-page]) .home-expand{transform-origin:50% 100%;border-radius:1rem 1rem 0 0}.home-progress{inset-inline:0;z-index:60;pointer-events:none;background:linear-gradient(90deg, var(--brand), var(--glow));transform-origin:0;height:3px;position:fixed;top:0;transform:scaleX(0)}[dir=rtl] .home-progress{transform-origin:100%}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.home-progress{animation:linear both home-progress;animation-timeline:scroll(root)}:is([data-home],[data-page])>header>.nav-notch{animation:linear both home-header;animation-timeline:scroll(root);animation-range:0 140px}:is([data-home],[data-page]) .reveal,:is([data-home],[data-page]) main section :is(h2,h2+p):not(.reveal,.reveal *){filter:none;animation:home-in var(--home-scroll-ease) both;animation-timeline:view();animation-range:cover 0 cover 40vh}:is([data-home],[data-page]) .reveal .reveal{opacity:1;animation:none;transform:none}:is([data-home],[data-page]) .home-hero-copy{animation:linear both home-hero-out;animation-timeline:view();animation-range:exit}:is([data-home],[data-page]) main img.object-cover{animation:linear both home-photo;animation-timeline:view()}:is([data-home],[data-page]) .home-expand{will-change:transform;animation:linear both home-expand;animation-timeline:view();animation-range:entry cover 50%}:is([data-home],[data-page]) .home-expand img.object-cover,:is([data-home],[data-page]) [data-carousel] img.object-cover{animation:none}@media (min-width:1024px){:is([data-home],[data-page]) .home-expand{--home-from:.88;animation-timeline:scroll(root);animation-range:0 80vh}}:is([data-home],[data-page]) .home-draw{animation:linear both home-draw;animation-timeline:view();animation-range:cover 5% cover 40%}:is([data-home],[data-page]) .home-line-fill{transform-origin:top;will-change:transform;animation:linear both home-fill;animation-timeline:view();animation-range:cover 30% cover 72%}:is([data-home],[data-page]) .home-pop{animation:home-pop var(--home-scroll-ease) both;animation-timeline:view();animation-range:cover 0 cover 40vh}:is([data-home],[data-page]) .home-light{animation:linear both home-light;animation-timeline:view();animation-range:cover 25% cover 50%}:is([data-home],[data-page]) .home-focus{animation:linear both home-focus;animation-timeline:view();animation-range:cover 20% cover 80%}}}@media (prefers-reduced-motion:no-preference){:is([data-home],[data-page]) .home-float{animation:6s ease-in-out infinite alternate home-float}:is([data-home],[data-page]) .home-float-late{animation:7s ease-in-out -3s infinite alternate home-float}:is([data-home],[data-page]) .home-orb{animation:20s ease-in-out infinite alternate home-orb}:is([data-home],[data-page]) .home-grid-pan{animation:40s linear infinite home-grid-pan}}@keyframes home-progress{to{transform:scaleX(1)}}@keyframes home-header{to{background-color:#fffffff5;box-shadow:0 10px 30px -18px #0b3d3159}}@keyframes home-in{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:none}}@keyframes home-expand{0%{transform:scale(var(--home-from,.92))}to{transform:none}}@keyframes home-draw{0%{transform:scaleX(0)}}@keyframes home-fill{0%{transform:scaleY(0)}}@keyframes home-pop{0%{opacity:0;transform:scale(.85)}}@keyframes home-light{0%{color:var(--line)}to{color:var(--brand)}}@keyframes home-focus{0%,to{background-color:#0000}40%,60%{background-color:var(--accent-quiet)}}@keyframes home-float{0%{transform:translateY(-6px)}to{transform:translateY(6px)}}@keyframes home-orb{0%{transform:translate(-6%,-4%)scale(1)}to{transform:translate(6%,4%)scale(1.15)}}@keyframes home-grid-pan{to{background-position:4rem 4rem,4rem 4rem}}@keyframes home-hero-out{to{opacity:.25;transform:translateY(-2rem)}}@keyframes home-photo{0%{transform:translateY(-4%)scale(1.1)}to{transform:translateY(4%)scale(1.1)}}@media (prefers-reduced-motion:no-preference){:is([data-home],[data-page]) details[open]>:not(summary){animation:home-answer .5s var(--home-ease)}}@keyframes home-answer{0%{opacity:0;transform:translateY(-.5rem)}}.home-spot{background-image:radial-gradient(32rem circle at var(--mx,50%) var(--my,50%), rgb(94 224 189/calc(var(--spot) * .06)), transparent 70%);transition:--spot .9s var(--home-ease)}.home-spot:hover{--spot:1}.home-magnet{transition:translate .45s var(--home-ease), background-color .3s, box-shadow .3s, scale .2s!important}
