@layer components{.landing-skip{z-index:50;border-radius:var(--radius);background:var(--ink);color:var(--paper);padding:.5rem .75rem;position:absolute;top:-100%;left:1rem}.landing-skip:focus-visible{top:1rem}.landing-section{scroll-margin-top:1rem}.landing-h2{letter-spacing:-.015em;font-size:clamp(2rem,3.6vw,3rem);line-height:1.08}.landing-h2 em,.landing-h1 em{color:var(--garnet);font-style:italic}.landing-h1{letter-spacing:-.025em;font-size:clamp(2.75rem,5vw,4rem);line-height:1}.landing-navlink{color:var(--ink-soft);background:linear-gradient(var(--garnet), var(--garnet)) left bottom / 0 1px no-repeat;transition:background-size var(--duration-standard) var(--ease-standard), color var(--duration-quick) var(--ease-standard);padding-block:.5rem;text-decoration:none}.landing-navlink:hover,.landing-navlink:focus-visible{color:var(--ink);background-size:100% 1px}.landing-arrow{transition:transform .2s var(--ease-standard)}.landing-cta:hover .landing-arrow{transform:translate(3px)}.landing-rise{animation:landing-rise var(--duration-slow) var(--ease-enter) both;animation-delay:calc(var(--i,0) * 80ms)}@keyframes landing-rise{0%{opacity:0;transform:translateY(16px)}}.landing-sheet{box-shadow:0 1px 0 var(--rule), 0 24px 48px -28px #3c2d1466}.landing-staff-line{stroke:color-mix(in oklch, var(--ink) 45%, transparent);stroke-width:1px;stroke-dasharray:640;animation:landing-draw .7s var(--ease-enter) .32s both}@keyframes landing-draw{0%{stroke-dashoffset:640px}to{stroke-dashoffset:0}}.landing-barline{stroke:var(--ink);stroke-width:1px}.landing-note{fill:var(--ink);stroke:var(--ink);animation:landing-note var(--duration-standard) var(--ease-enter) both;animation-delay:calc(.64s + var(--i,0) * 35ms)}.landing-note ellipse{stroke:none}.landing-note line{stroke-width:1.5px}@keyframes landing-note{0%{opacity:0;transform:translateY(-6px)}}.landing-note-current{fill:var(--garnet);stroke:var(--garnet)}.landing-halo{fill:var(--garnet);opacity:.08;animation:1.6s ease-in-out 1.3s infinite alternate landing-breathe}@keyframes landing-breathe{0%{opacity:.06}to{opacity:.2}}.landing-playhead{stroke:var(--garnet);stroke-width:1.5px;animation:8s linear 1.3s infinite landing-sweep}@keyframes landing-sweep{0%{transform:translate(0)}to{transform:translate(640px)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){:root:not([data-motion=reduce]) .landing-reveal{animation:landing-rise var(--ease-enter) both;animation-timeline:view();animation-range:entry entry 50%}}}.landing-streak-day{background:var(--ink);width:30px;height:30px;color:var(--paper);border-radius:9999px;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.landing-streak-day[data-today]{background:var(--garnet)}.landing-star{color:var(--ink);font-size:28px;line-height:1;display:inline-block}.landing-medal circle{fill:var(--wash);stroke:var(--ink);stroke-width:3px}.landing-medal path{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){:root:not([data-motion=reduce]) .landing-streak-day[data-today],:root:not([data-motion=reduce]) .landing-star{animation:landing-pop var(--ease-pop) both;animation-timeline:view();animation-range:entry 60%}:root:not([data-motion=reduce]) .landing-star:nth-child(2){animation-range:entry 70% entry 110%}:root:not([data-motion=reduce]) .landing-star:nth-child(3){animation-range:entry 80% entry 120%}}}@keyframes landing-pop{0%{opacity:0;transform:scale(.4)}}@media (prefers-reduced-motion:reduce){.landing-rise,.landing-staff-line,.landing-note,.landing-halo,.landing-playhead{animation:none}.landing-halo{opacity:.12}.landing-playhead{transform:translate(254px)}.landing-arrow{transition:none}}:root[data-motion=reduce] .landing-rise,:root[data-motion=reduce] .landing-staff-line,:root[data-motion=reduce] .landing-note,:root[data-motion=reduce] .landing-halo,:root[data-motion=reduce] .landing-playhead{animation:none}:root[data-motion=reduce] .landing-halo{opacity:.12}:root[data-motion=reduce] .landing-playhead{transform:translate(254px)}}