.landing-page{--landing-navy:#06112d;--landing-violet:#a855f7;--landing-ink-shadow:0 1px 2px #000000b3;background:var(--landing-navy);min-height:100svh}.landing{position:relative}.landing-scene{isolation:isolate;background:var(--landing-navy);width:100%;aspect-ratio:var(--scene-aspect-desktop);position:relative;overflow:hidden}.landing-layer{top:var(--scene-y-desktop,0%);width:100%;aspect-ratio:var(--scene-aspect-desktop);pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;left:0}.landing-layer img{object-fit:fill;width:100%;height:100%;display:block}.landing-star{position:absolute;transform:translate(-50%,-50%)}@keyframes landing-star-pulse{0%,to{opacity:.45}50%{opacity:1}}@media (prefers-reduced-motion:no-preference){.landing-star-pulse{animation:7s ease-in-out infinite landing-star-pulse}}.landing-hero{inset-inline:0;width:clamp(160px,29vw - 60px,400px);margin-inline:auto;position:absolute;top:5%}.landing-logo-wrap{width:100%;position:relative}.landing-logo-wrap:before{content:"";background:radial-gradient(closest-side,#06112de6,#06112d8c 55%,#0000 100%);position:absolute;inset:-12%}.landing-logo{width:100%;height:auto;display:block;position:relative}.landing-nav-link{min-height:44px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text);text-shadow:var(--landing-ink-shadow);transition:color var(--motion-duration-fast) var(--motion-ease);align-items:center;font-size:.75rem;display:inline-flex}@media (hover:hover){.landing-nav-link:hover{color:var(--brand-primary)}}.landing-grid{pointer-events:none;display:grid}.landing-portal{pointer-events:auto;text-align:center;min-height:44px;color:var(--text);transition:transform var(--motion-duration-base) var(--motion-ease), background-color var(--motion-duration-base) var(--motion-ease), box-shadow var(--motion-duration-base) var(--motion-ease);border-radius:1.25rem;flex-direction:column;justify-content:center;align-items:center;gap:.35em;padding:4% 6%;text-decoration:none;display:flex;position:relative;container-type:inline-size}.landing-portal-title{font-family:var(--font-display);text-shadow:var(--landing-ink-shadow);font-size:clamp(1rem,8.4cqi,1.8rem);line-height:1.05;position:relative}.landing-portal-spiral{aspect-ratio:1;height:min(100%,81.6cqi);color:var(--landing-violet);filter:drop-shadow(0 0 10px color-mix(in oklab, var(--landing-violet) 70%, transparent));opacity:0;transition:opacity .35s var(--motion-ease,ease);pointer-events:none;margin:auto;position:absolute;inset:0}@media (hover:hover){.landing-portal:hover{transform:translateY(-3px)}.landing-portal:hover .landing-portal-spiral{opacity:.9}}.landing-portal:focus-visible .landing-portal-spiral{opacity:.9}@media (prefers-reduced-motion:no-preference){.landing-portal:hover .landing-portal-spiral,.landing-portal:focus-visible .landing-portal-spiral{animation:8s linear infinite landing-spiral-spin}}@keyframes landing-spiral-spin{to{transform:rotate(360deg)}}@media (min-width:768px){.landing-grid{left:var(--grid-left-desktop);right:var(--grid-right-desktop);top:var(--grid-top-desktop);bottom:var(--grid-bottom-desktop);z-index:var(--z-grid);grid-template-columns:repeat(4,minmax(0,1fr));position:absolute}}@media (max-width:767px){.landing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-page:has(.landing[data-mobile-set]){flex-direction:column;display:flex}.landing[data-mobile-set]{width:100%;margin-block:auto}.landing[data-mobile-set] .landing-scene{margin-top:var(--scene-y-mobile,0%);aspect-ratio:var(--scene-aspect-mobile)}.landing[data-mobile-set] .landing-layer{aspect-ratio:var(--scene-aspect-mobile);top:0}.landing[data-mobile-set] .landing-hero{width:clamp(190px,58vw,310px);top:7%}.landing[data-mobile-set] .landing-grid{left:var(--grid-left-mobile);right:var(--grid-right-mobile);top:var(--grid-top-mobile);bottom:var(--grid-bottom-mobile);z-index:var(--z-grid);grid-template-rows:repeat(2,minmax(0,1fr));gap:7% 6%;position:absolute}.landing:not([data-mobile-set]) .landing-hero{width:clamp(190px,58vw,310px);margin:2rem auto 1.5rem;position:static}.landing:not([data-mobile-set]) .landing-grid{gap:.75rem;padding:1.5rem 1rem 2.5rem}.landing:not([data-mobile-set]) .landing-caves{display:none}.landing:not([data-mobile-set]) .landing-portal{background:color-mix(in oklab, var(--landing-violet) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--brand-primary) 30%, transparent);padding:1rem .5rem}}.landing-portal,.landing-cave{--cave-glow:var(--landing-violet)}.landing-caves{pointer-events:none}.landing-cave{position:relative;container-type:inline-size}.landing-cave-glow,.landing-cave-swirl{pointer-events:none;border-radius:28%;position:absolute;inset:-10%}.landing-cave-glow{background:radial-gradient(closest-side, color-mix(in oklab, var(--cave-glow) 55%, var(--landing-navy)), color-mix(in oklab, var(--cave-glow) 30%, var(--landing-navy)) 55%, color-mix(in oklab, var(--cave-glow) 16%, var(--landing-navy)) 100%)}.landing-cave-swirl{overflow:hidden;-webkit-mask-image:radial-gradient(closest-side,#000 55%,#0000 100%);mask-image:radial-gradient(closest-side,#000 55%,#0000 100%)}.landing-cave-swirl:before,.landing-cave-swirl:after{content:"";background:conic-gradient(from 20deg, color-mix(in oklab, var(--cave-glow) 70%, var(--landing-navy)), color-mix(in oklab, var(--landing-violet) 60%, var(--landing-navy)), color-mix(in oklab, var(--cave-glow) 30%, var(--landing-navy)), color-mix(in oklab, var(--landing-violet) 45%, var(--landing-navy)), color-mix(in oklab, var(--cave-glow) 70%, var(--landing-navy)));filter:blur(9px)saturate(1.3);border-radius:50%;position:absolute;inset:-30%}.landing-cave-swirl:after{mix-blend-mode:screen;background:conic-gradient(from 200deg, transparent, color-mix(in oklab, var(--cave-glow) 55%, transparent) 22%, transparent 42%, color-mix(in oklab, var(--landing-violet) 50%, transparent) 68%, transparent);filter:blur(6px)}@media (prefers-reduced-motion:no-preference){.landing-cave-swirl:before{animation:21s linear infinite landing-swirl}.landing-cave-swirl:after{animation:13s linear infinite reverse landing-swirl}}@keyframes landing-swirl{to{transform:rotate(360deg)}}.landing-cave-fireflies{pointer-events:none;position:absolute;inset:0}.landing-cave-fireflies i{background:var(--cave-glow);width:5px;height:5px;box-shadow:0 0 10px 2px color-mix(in oklab, var(--cave-glow) 80%, transparent);opacity:.7;border-radius:50%;position:absolute}.landing-cave-fireflies i:first-child{top:40%;left:36%}.landing-cave-fireflies i:nth-child(2){width:4px;height:4px;top:54%;left:61%}.landing-cave-fireflies i:nth-child(3){width:3px;height:3px;top:66%;left:46%}@media (prefers-reduced-motion:no-preference){.landing-cave-fireflies i{animation:7s ease-in-out infinite landing-firefly}.landing-cave-fireflies i:nth-child(2){animation-duration:9s;animation-delay:-3s}.landing-cave-fireflies i:nth-child(3){animation-duration:11s;animation-delay:-5s}}@keyframes landing-firefly{0%,to{opacity:.3;transform:translate(0)}50%{opacity:1;transform:translate(7px,-11px)}}
