@charset "UTF-8";.theme-toggle{--theme-toggle-ring: color-mix(in srgb, var(--text) 38%, transparent);align-items:center;background:transparent;border:1px solid transparent;box-shadow:inset 0 0 0 1.5px var(--theme-toggle-ring);color:inherit;cursor:pointer;display:inline-flex;font:inherit;justify-content:center;transition:background-color .15s ease,box-shadow .15s ease,color .15s ease}.theme-toggle:hover{--theme-toggle-ring: color-mix(in srgb, var(--text) 70%, transparent);background:var(--bg-high);color:var(--text)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle--icon{border-radius:50%;color:var(--text-muted);flex:0 0 auto;height:2.75rem;width:2.75rem}.theme-toggle--row{border-radius:var(--radius-sm);color:var(--text-muted);justify-content:flex-start;min-height:2.75rem;padding:.8rem .9rem;text-align:left;width:100%}.theme-toggle__face{align-items:center;display:flex;gap:.75rem}.theme-toggle__icon{flex:0 0 auto;height:1.35rem;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75;width:1.35rem}.theme-toggle__text{font-size:1.05rem;line-height:1.4}.theme-toggle__face--dark,:root[data-theme=light] .theme-toggle__face--light{display:none}:root[data-theme=light] .theme-toggle__face--dark{display:flex}@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}.menu-toggle,.drawer-close{align-items:center;border:0;color:inherit;cursor:pointer;display:inline-flex;justify-content:center}.menu-actions{align-items:center;display:flex;flex:0 0 auto;gap:.25rem}.menu-toggle{background:var(--bg);flex:0 0 auto;height:2.75rem;transition:background-color .15s ease,border-color .15s ease;width:2.75rem}.menu-toggle:hover{background:var(--bg-high);border-color:var(--accent)}@media(min-width:64rem){.menu-toggle{display:none}}.menu-icon{display:grid;gap:.3rem;width:1.35rem}.menu-icon span{background:currentColor;border-radius:999px;display:block;height:2px}.drawer-layer{top:0;right:0;bottom:0;left:0;position:fixed;z-index:2000}.drawer-backdrop{background:#02050cb8;border:0;cursor:default;top:0;right:0;bottom:0;left:0;padding:0;position:absolute;width:100%}.navigation-drawer{box-sizing:border-box;background:var(--bg);border-left:1px solid var(--surface-border);box-shadow:var(--shadow);color:var(--text);height:100vh;height:100dvh;max-width:min(22rem,88vw);padding:1.25rem;overflow-y:auto;overscroll-behavior:contain;position:absolute;right:0;top:0;width:100%;animation:drawer-slide-in .22s ease-out}.navigation-drawer__header{align-items:center;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;padding-bottom:1rem}.navigation-drawer__header h2{font-size:1.25rem;margin:0}.drawer-close{background:transparent;border-radius:50%;color:var(--text-muted);font-size:2rem;flex:0 0 auto;height:2.75rem;line-height:1;width:2.75rem}.drawer-close:hover{background:var(--bg-high);color:var(--text)}.drawer-nav{padding-top:1rem}.drawer-footer{border-top:1px solid var(--surface-border);display:grid;gap:.5rem;margin-top:1rem;padding-top:1rem}.site-nav__list,.site-nav__submenu{display:grid;gap:.35rem;list-style:none;margin:0;padding:0}.site-nav__item{min-width:0}.site-nav__submenu{border-left:1px solid var(--surface-border);margin:.35rem 0 .5rem .9rem;padding-left:.65rem}.site-nav__submenu[hidden]{display:none}.site-nav__link{box-sizing:border-box;display:block;min-height:2.75rem;width:100%;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-family:inherit;font-size:1.05rem;line-height:1.4;overflow-wrap:anywhere;padding:.8rem .9rem;text-align:left;text-decoration:none}.site-nav__group{align-items:center;cursor:pointer;display:flex;gap:.75rem;justify-content:space-between}.site-nav__group--active{color:var(--accent);font-weight:700}.site-nav__submenu .site-nav__link{font-size:.95rem}.site-nav__chevron{flex:0 0 1rem;height:1rem;width:1rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75;transition:transform .15s ease}.site-nav__group[aria-expanded=true] .site-nav__chevron{transform:rotate(180deg)}.menu-toggle:focus-visible,.drawer-close:focus-visible,.site-nav__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-nav__link:hover{background:var(--bg-high);color:var(--text);text-decoration:none}.site-nav__link--active{background:var(--active-bg);border-color:var(--active-border);color:var(--accent);font-weight:700}@keyframes drawer-slide-in{0%{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.navigation-drawer{animation:none}.site-nav__chevron{transition:none}}.menu-bar{display:none}@media(min-width:64rem){.menu-bar{background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,#000);display:block;padding-inline:clamp(1rem,4vw,2rem);position:relative;z-index:1000}}.menu-bar__list{display:flex;gap:.25rem;list-style:none;margin:0 0 0 -.85rem;padding:0}.menu-bar__item{position:relative}.menu-bar__link{align-items:center;background:none;border:0;color:var(--text-muted);cursor:pointer;display:inline-flex;font:inherit;font-size:.95rem;font-weight:600;gap:.35rem;min-height:2.75rem;padding:0 .85rem;position:relative;text-decoration:none;transition:color .15s ease;white-space:nowrap}.menu-bar__link:after{background:transparent;border-radius:3px 3px 0 0;bottom:0;content:"";height:3px;left:.85rem;position:absolute;right:.85rem}.menu-bar__link:hover,.menu-bar__link[aria-expanded=true]{color:var(--text);text-decoration:none}.menu-bar__link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.menu-bar__link--active{color:var(--text)}.menu-bar__link--active:after{background:var(--active)}.menu-bar__chevron{fill:none;height:.9rem;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75;transition:transform .15s ease;width:.9rem}.menu-bar__link[aria-expanded=true] .menu-bar__chevron{transform:rotate(180deg)}.menu-bar__panel{background:var(--bg);border:1px solid var(--surface-border);border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow);display:flex;gap:.75rem;left:0;padding:.5rem;position:absolute;top:100%}.menu-bar__panel[hidden]{display:none}.menu-bar__panel--end{left:auto;right:0}.menu-bar__links{display:grid;gap:.1rem;list-style:none;margin:0;min-width:13rem;padding:0}.menu-bar__panel-link{border-radius:var(--radius-sm);color:var(--text-muted);display:block;font-size:.95rem;line-height:1.35;max-width:18rem;padding:.55rem .75rem;text-decoration:none}.menu-bar__panel-link:hover{background:var(--active-bg);color:var(--text);text-decoration:none}.menu-bar__panel-link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.menu-bar__panel-link--active{color:var(--active);font-weight:700}.menu-bar__column{border-left:1px solid var(--surface-border);padding-left:.75rem}.menu-bar__heading{color:var(--text-dim);font-size:.72rem;font-weight:700;letter-spacing:.09em;margin:.55rem .75rem .3rem;text-transform:uppercase}@media(prefers-reduced-motion:reduce){.menu-bar__link,.menu-bar__chevron{transition:none}}.app-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-shell--home{--maxw: 81.25rem}.app-shell--home .site-main{padding-top:0;padding-bottom:clamp(1.5rem,3vw,2.25rem)}.site-header{background:var(--bg);border-bottom:1px solid var(--surface-border);color:var(--text)}.site-header__inner{align-items:center;background-color:var(--bg);display:flex;gap:1rem;justify-content:space-between;min-height:4.75rem;padding:1rem clamp(1rem,4vw,2rem);position:relative}@media(min-width:64rem){.site-header__inner{min-height:7.5rem;padding-block:.6rem}}@media(min-width:48rem){.site-header__inner{background-image:url(../img/header/earth-limb.webp);background-image:image-set(url(../img/header/earth-limb.webp) 1x,url(../img/header/earth-limb@2x.webp) 2x);background-position:right bottom;background-repeat:no-repeat;background-size:auto 100%}}.site-header__actions{align-items:center;display:flex;flex:0 0 auto;gap:clamp(.5rem,1.5vw,1rem)}.site-header__link{align-items:center;color:var(--text);display:flex;gap:1rem;min-width:0;transition:opacity .15s ease}.site-header__link:hover,.site-header__link:focus-visible{opacity:.8;text-decoration:none}.site-header__logo{aspect-ratio:118.4/70.7;display:block;flex-shrink:0;height:clamp(2rem,5vw,2.75rem);width:auto}.site-header__titles{display:flex;flex-direction:column;min-width:0}.site-header__name{font-size:clamp(1rem,3.5vw,1.5rem);font-weight:700;line-height:1.1}.site-header__tagline{font-size:.85rem;font-weight:400}.site-title{font-size:clamp(2.15rem,6vw,5rem);font-weight:800;letter-spacing:-.035em;line-height:1.2;margin:0;text-transform:uppercase}.site-title-years{color:var(--accent);display:inline-block;white-space:nowrap}.site-main{display:flex;flex:1 0 auto;flex-direction:column;padding-block:clamp(1.2rem,5vw,3rem)}.site-footer{border-top:1px solid var(--surface-border);color:var(--text-dim);flex-shrink:0;font-size:.9rem;padding-block:.5rem}.site-footer p{margin:0}.site-footer__inner{align-items:baseline;column-gap:1.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;row-gap:.25rem}.site-footer__nav{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}.site-footer__nav a{color:inherit;text-decoration:underline;text-underline-offset:.15em}.site-footer__nav a:hover,.site-footer__nav a:focus-visible{color:var(--text)}@media(prefers-reduced-motion:reduce){.site-header__link{transition:none}}.nav-progress{height:2px;inset-inline:0;opacity:0;pointer-events:none;position:fixed;top:0;z-index:1500}.nav-progress[data-phase=busy],.nav-progress[data-phase=done]{opacity:1}.nav-progress[data-phase=idle]{transition:opacity .18s ease 40ms}.nav-progress__bar{background:var(--accent);border-end-end-radius:2px;border-start-end-radius:2px;height:100%;transform:scaleX(0);transform-origin:left center;width:100%}[data-phase=busy]>.nav-progress__bar{animation:nav-progress-advance 10s cubic-bezier(0,.75,.2,1) forwards}[data-phase=done]>.nav-progress__bar{transform:scaleX(1);transition:transform .16s ease-out}@keyframes nav-progress-advance{0%{transform:scaleX(0)}to{transform:scaleX(.9)}}@media(prefers-reduced-motion:reduce){[data-phase=busy]>.nav-progress__bar,[data-phase=done]>.nav-progress__bar{animation:none;transform:scaleX(1);transition:none}.nav-progress[data-phase=idle]{transition:none}}
