:root{--color-bg-base:#07091a;--color-bg-elevated:#0c1128;--color-bg-card:#11173a;--color-bg-note:#fcf4cf;--color-accent-primary:#3bc7ff;--color-accent-secondary:#7c5cff;--color-accent-success:#2ee08f;--color-text-primary:#f1f4ff;--color-text-secondary:#b7c0d8;--color-text-muted:#7a87a6;--color-text-inverse:#0a0f2a;--color-border-subtle:#8aa3d91f;--color-border-muted:#8aa3d933;--color-border-accent:#3bc7ff59;--color-grid-line:#5a80c812;--color-grid-dot:#8aa3d940;--font-family-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-family-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-2xs:.6875rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:2.75rem;--font-size-4xl:4rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-normal:1.55;--line-height-loose:1.75;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.08em;--letter-spacing-wider:.2em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--space-9:4rem;--space-10:5rem;--space-11:6rem;--space-12:8rem;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:20px;--radius-2xl:28px;--radius-pill:999px;--border-width-thin:1px;--border-width-regular:2px;--shadow-glow-accent:0 0 24px #3bc7ff2e;--shadow-card:0 10px 40px -20px #0009;--shadow-note:4px 6px 0 #00000040;--layout-container-max:1280px;--layout-gutter-mobile:1.25rem;--layout-gutter-desktop:2rem;--layout-section-gap:6rem;--navbar-height:4rem;--duration-fast:.15s;--duration-base:.25s;--duration-slow:.45s;--duration-fade:.7s;--duration-fade-slow:.9s;--easing-standard:cubic-bezier(.22, .61, .36, 1);--easing-emphasized:cubic-bezier(.16, 1, .3, 1);--fade-distance:16px;--fade-distance-sm:8px;--z-base:0;--z-sticky:10;--z-overlay:40;--z-modal:60}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}html{background-color:var(--color-bg-base);color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:72px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background-color:var(--color-bg-base);color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:3px;border-radius:var(--radius-xs)}.container{width:100%;max-width:var(--layout-container-max);padding-inline:var(--layout-gutter-mobile);margin-inline:auto;@media (width>=768px){padding-inline:var(--layout-gutter-desktop)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translate3d(0, var(--fade-distance), 0)}to{opacity:1;transform:translate(0,0)}}@keyframes fade-in-down{0%{opacity:0;transform:translate3d(0, calc(var(--fade-distance) * -1), 0)}to{opacity:1;transform:translate(0,0)}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.fade-in,.fade-in-up,.fade-in-down,.fade-in-scale{animation-duration:var(--duration-fade);animation-timing-function:var(--easing-emphasized);animation-fill-mode:both;animation-delay:var(--fade-delay,0s)}.fade-in{animation-name:fade-in}.fade-in-up{animation-name:fade-in-up}.fade-in-down{animation-name:fade-in-down}.fade-in-scale{animation-name:fade-in-scale;animation-duration:var(--duration-fade-slow)}@media (prefers-reduced-motion:reduce){.fade-in,.fade-in-up,.fade-in-down,.fade-in-scale{animation:none}}.space-background[data-astro-cid-6p7ite5k]{width:100vw;height:100lvh;z-index:var(--z-base);pointer-events:none;background:var(--color-bg-base);--mx:0;--my:0;position:fixed;top:0;left:0;overflow:hidden;& .space-background__nebula-shell,& .space-background__grid-shell,& .space-background__labels-shell{will-change:transform;position:absolute;inset:0}& .space-background__nebula{translate:calc(var(--mx) * 4px) calc(var(--my) * 4px);background:radial-gradient(at 18% 12%,#7c5cff1f,#0000 55%),radial-gradient(at 82% 58%,#3bc7ff1a,#0000 60%),radial-gradient(at 48% 90%,#2ee08f0f,#0000 55%);animation:40s ease-in-out infinite alternate nebula-drift,75s linear infinite nebula-hue;position:absolute;inset:-10%}& .space-background__grid{background-image:linear-gradient(var(--color-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid-line) 1px, transparent 1px);translate:calc(var(--mx) * 6px) calc(var(--my) * 6px);background-size:64px 64px;animation:120s linear infinite grid-scroll;position:absolute;inset:-64px 0;mask-image:radial-gradient(#000,#0000 80%)}& .space-background__rotator{transform-origin:50%;will-change:transform;width:150%;height:150%;animation:600s linear infinite starfield-rotate;position:absolute;top:-25%;left:-25%}& .space-background__stars{translate:calc(var(--mx) * 8px) calc(var(--my) * 8px);position:absolute;inset:0}& .star{left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:var(--radius-pill);opacity:var(--opacity);box-shadow:0 0 var(--glow) currentColor;animation:twinkle var(--duration) var(--delay) ease-in-out infinite;color:#fff;background:currentColor;position:absolute;&[data-variant=blue]{color:#9acfff}&[data-variant=warm]{color:#ffd69a}&[data-variant=accent]{color:var(--color-accent-primary)}}& .space-background__constellations{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;& line{stroke:var(--color-accent-primary);stroke-width:.15px;vector-effect:non-scaling-stroke;stroke-dasharray:var(--length);stroke-dashoffset:var(--length);opacity:0;animation:constellation-draw var(--duration) var(--delay) ease-out infinite}}& .space-background__comets{translate:calc(var(--mx) * 10px) calc(var(--my) * 10px);position:absolute;inset:0}& .comet{top:var(--top);width:140px;height:2px;transform:rotate(var(--angle));transform-origin:0;border-radius:var(--radius-pill);filter:drop-shadow(0 0 4px #b4dcff80)drop-shadow(0 0 12px #3bc7ff38);opacity:0;animation:shoot var(--duration) var(--delay) ease-out infinite;background:linear-gradient(90deg,#0000 0%,#5096dc1f 35%,#8cc8f059 65%,#c8e6ff99 88%,#ffffffd9 100%);position:absolute;left:-15%}& .space-background__planets{translate:calc(var(--mx) * 3px) calc(var(--my) * 3px);transition:opacity var(--duration-slow) var(--easing-standard);position:absolute;inset:0}&.space-background--dim-planets .space-background__planets[data-astro-cid-6p7ite5k]{opacity:.25}& .planet{top:var(--top);left:var(--left);width:var(--size);height:var(--size);isolation:isolate;pointer-events:none;opacity:.7;animation:planet-drift var(--drift-duration) var(--drift-delay) ease-in-out infinite alternate, planet-depth var(--depth-duration) var(--depth-delay) ease-in-out infinite alternate;border-radius:50%;position:absolute;&:before{content:"";background:radial-gradient(circle, var(--halo-color), transparent 65%);opacity:.2;z-index:-1;pointer-events:none;animation:planet-glow var(--glow-duration) var(--glow-delay) ease-in-out infinite alternate;border-radius:50%;position:absolute;inset:-28%}&[data-kind=ice]{--halo-color:#b4dcff8c;background:radial-gradient(circle at 30% 28%,#fffffff2,#b4dcffb3 38%,#5082b48c 72%,#142850d9);box-shadow:inset -2px -3px 4px #000a1e8c,inset 1px 1px 2px #ffffff40}&[data-kind=gas]{--halo-color:#dc82aa80;background:repeating-linear-gradient(#ffc8b40d 0 2px,#501e461f 2px 4px),radial-gradient(circle at 28% 28%,#ffdcc8cc,#dc8296b3 35%,#8c466ed9 72%,#32143ce6);box-shadow:inset -3px -4px 6px #14001e99,inset 1px 1px 2px #ffdcc840}&[data-kind=rocky]{--halo-color:#dc8c5a73;background:radial-gradient(circle at 32% 26%,#ffc8a0e6,#d27850bf 38%,#78412dd9 72%,#23120ce6);box-shadow:inset -2px -2px 3px #140500a6,inset 1px 1px 1.5px #ffc8a038}&[data-kind=uranus]{--halo-color:#8cdcf08c;--ring-color:205, 235, 245;background:radial-gradient(circle at 34% 30%,#e4fafcf2,#b4e8f0e0 30%,#6ecddcd9 62%,#2882a0eb);box-shadow:inset -2px -3px 5px #00233c8c,inset 1px 1px 2px #dcfaff4d}&[data-kind=saturn]{--halo-color:#ebd29680;--ring-color:235, 220, 180;background:repeating-linear-gradient(#fff0c80a 0 3px,#b48c5014 3px 5px),radial-gradient(circle at 32% 28%,#fff5d7f2,#ebcd91e0 32%,#c39b5ad9 65%,#6e5028eb);box-shadow:inset -2px -3px 5px #2819058c,inset 1px 1px 2px #fff0d74d}& .planet__ring{width:calc(var(--size) * var(--ring-scale));height:calc(var(--size) * var(--ring-scale) * .18);transform:translate(-50%, -50%) rotate(var(--ring-rotate));border:var(--ring-thickness) solid rgba(var(--ring-color), var(--ring-opacity));box-shadow:0 0 4px rgba(var(--ring-color), calc(var(--ring-opacity) * .6)), inset 0 0 2px rgba(var(--ring-color), calc(var(--ring-opacity) * .45));pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%}&[data-ring=true]:after{content:"";width:calc(var(--size) * 2.4);height:calc(var(--size) * .45);pointer-events:none;border:1px solid #e6c8e666;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-18deg);box-shadow:0 0 3px #e6c8e640,inset 0 0 3px #e6c8e62e}& .moon-orbit{width:var(--orbit-size);height:var(--orbit-size);margin-top:calc(var(--orbit-size) / -2);margin-left:calc(var(--orbit-size) / -2);pointer-events:none;animation:moon-spin var(--orbit-duration) linear infinite;animation-delay:calc(var(--orbit-duration) * var(--start-progress) * -1);border-radius:50%;position:absolute;top:50%;left:50%;&[data-direction=reverse]{animation-direction:reverse}}& .moon{width:var(--moon-size);height:var(--moon-size);margin-top:calc(var(--moon-size) / -2);margin-right:calc(var(--moon-size) / -2);background:radial-gradient(circle at 30% 30%,#f5f8fff2,#aab4c8d9 70%,#5a6478e6);border-radius:50%;position:absolute;top:50%;right:0;box-shadow:0 0 3px #dce6f573,inset -1px -1px 1.5px #1419288c}}& .space-background__labels{translate:calc(var(--mx) * 12px) calc(var(--my) * 12px);position:absolute;inset:0;& .space-background__label{font-family:var(--font-family-mono);font-size:var(--font-size-2xs);letter-spacing:var(--letter-spacing-wide);color:var(--color-text-muted);opacity:.25;white-space:nowrap;position:absolute}}}@keyframes twinkle{0%,to{opacity:var(--opacity);transform:scale(1)}50%{opacity:calc(var(--opacity) * .28);transform:scale(.72)}}@keyframes grid-scroll{0%{background-position:0 0}to{background-position:0 -1024px}}@keyframes nebula-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(-1%,-1.5%)scale(1.04)}to{transform:translate(1.5%,.5%)scale(1)}}@keyframes nebula-hue{0%,to{filter:hue-rotate()}33%{filter:hue-rotate(25deg)}66%{filter:hue-rotate(-15deg)}}@keyframes starfield-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes constellation-draw{0%{stroke-dashoffset:var(--length);opacity:0}20%{opacity:.55}60%{stroke-dashoffset:0;opacity:.55}90%{opacity:0}to{stroke-dashoffset:0;opacity:0}}@keyframes shoot{0%{opacity:0;transform:rotate(var(--angle)) scaleX(.55);left:-15%}1%{opacity:.45;transform:rotate(var(--angle)) scaleX(.85)}2%{opacity:.6;transform:rotate(var(--angle)) scaleX(1)}3%{opacity:.5;transform:rotate(var(--angle)) scaleX(1.12)}4%{opacity:0;transform:rotate(var(--angle)) scaleX(.65);left:115%}to{opacity:0;transform:rotate(var(--angle)) scaleX(.55);left:115%}}@keyframes nebula-scroll-parallax{0%{transform:translate(0)}to{transform:translateY(-30px)}}@keyframes grid-scroll-parallax{0%{transform:translate(0)}to{transform:translateY(-60px)}}@keyframes stars-scroll-parallax{0%{translate:0}to{translate:0 -90px}}@keyframes labels-scroll-parallax{0%{transform:translate(0)}to{transform:translateY(-140px)}}@keyframes planet-glow{0%{opacity:.32;transform:scale(.92)}to{opacity:.65;transform:scale(1.08)}}@keyframes planet-drift{0%{translate:0}to{translate:var(--drift-x) var(--drift-y)}}@keyframes planet-depth{0%{opacity:1;transform:scale(1)}to{opacity:.65;transform:scale(.7)}}@keyframes moon-spin{0%{rotate:0deg}to{rotate:360deg}}@supports (animation-timeline:scroll()){@media (hover:hover) and (pointer:fine){.space-background__nebula-shell[data-astro-cid-6p7ite5k]{animation:linear nebula-scroll-parallax scroll(root)}.space-background__grid-shell[data-astro-cid-6p7ite5k]{animation:linear grid-scroll-parallax scroll(root)}.space-background__rotator[data-astro-cid-6p7ite5k]{animation:600s linear infinite starfield-rotate,linear stars-scroll-parallax scroll(root)}.space-background__labels-shell[data-astro-cid-6p7ite5k]{animation:linear labels-scroll-parallax scroll(root)}}}@media (prefers-reduced-motion:reduce){.space-background[data-astro-cid-6p7ite5k]{--mx:0;--my:0;& .star,& .comet,& .planet,& .planet:before,& .moon-orbit,& .space-background__grid,& .space-background__nebula,& .space-background__rotator,& .space-background__constellations line,& .space-background__nebula-shell,& .space-background__grid-shell,& .space-background__labels-shell{animation:none}}}.footer[data-astro-cid-qhgyxtuh]{z-index:var(--z-sticky);padding-block:var(--space-8);position:relative;& .footer__inner{gap:var(--space-5);flex-direction:column;display:flex}& .footer__top{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex;& .footer__logo{font-family:var(--font-family-mono);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-accent-primary);letter-spacing:var(--letter-spacing-tight)}& .footer__links{gap:var(--space-5);margin:0;padding:0;list-style:none;display:flex;& .footer__link{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);letter-spacing:var(--letter-spacing-wide);&:hover{color:var(--color-accent-primary)}}}}& .footer__divider{border:0;border-top:1px solid var(--color-border-subtle);margin:0}& .footer__copy{text-align:center;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:var(--letter-spacing-wide);margin:0}}
