.cut-word[data-astro-cid-howp6dpg]{display:inline-flex;white-space:nowrap}.cut-window[data-astro-cid-howp6dpg]{display:inline-block;overflow:clip;padding-block:.08em;margin-block:-.08em}.cut-letter[data-astro-cid-howp6dpg]{display:inline-block}@media(prefers-reduced-motion:no-preference){html:not([data-client-navigation]) .cut-letter[data-astro-cid-howp6dpg]{animation:cut-reveal .6s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--letter-index) * 18ms)}}@keyframes cut-reveal{0%{transform:translateY(115%)}to{transform:translateY(0)}}.about[data-astro-cid-5vtmhcfp]{min-width:0}h1[data-astro-cid-5vtmhcfp]{margin:0 0 1.75rem;font-size:clamp(4.5rem,8vw,6rem);line-height:1.08;letter-spacing:-.04em}.greeting[data-astro-cid-5vtmhcfp]{display:block;margin-bottom:.15em;color:var(--text-secondary);font-size:.53em;font-weight:400;letter-spacing:-.03em}.name[data-astro-cid-5vtmhcfp]{display:block;font-weight:650}.bio[data-astro-cid-5vtmhcfp] p{max-width:33ch;margin:0;font-size:1rem;line-height:1.8;color:var(--text-secondary)}.intro-socials[data-astro-cid-5vtmhcfp]{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem;margin-top:1.25rem}.intro-socials[data-astro-cid-5vtmhcfp] a[data-astro-cid-5vtmhcfp]{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;font-size:.875rem;text-decoration:none}.intro-socials[data-astro-cid-5vtmhcfp] .link-brand-icon{width:16px;height:16px;display:inline-flex;align-items:center;flex:none}.intro-socials[data-astro-cid-5vtmhcfp] .link-favicon{width:16px;height:16px;display:block}.intro-socials[data-astro-cid-5vtmhcfp] .link-favicon-dark,html.dark .intro-socials[data-astro-cid-5vtmhcfp] .link-favicon-light{display:none}html.dark .intro-socials[data-astro-cid-5vtmhcfp] .link-favicon-dark{display:block}.intro-socials[data-astro-cid-5vtmhcfp] .link-external-arrow{width:12px;height:12px;color:var(--text-secondary)}@media(hover:hover)and (pointer:fine){.intro-socials[data-astro-cid-5vtmhcfp] a[data-astro-cid-5vtmhcfp]:hover>span[data-astro-cid-5vtmhcfp]{text-decoration:underline;text-underline-offset:.25em}.intro-socials[data-astro-cid-5vtmhcfp] a[data-astro-cid-5vtmhcfp]:hover .link-external-arrow{transform:translate(1px,-1px);color:var(--text-primary)}}@media(prefers-reduced-motion:no-preference){.intro-socials[data-astro-cid-5vtmhcfp] .link-external-arrow{transition:transform .16s var(--ease-out)}}.intro-socials[data-astro-cid-5vtmhcfp] a[data-astro-cid-5vtmhcfp]:active{opacity:.65}@media(max-width:767px){h1[data-astro-cid-5vtmhcfp]{font-size:4.5rem;margin-bottom:1.25rem}.greeting[data-astro-cid-5vtmhcfp],.name[data-astro-cid-5vtmhcfp]{display:inline;font-size:inherit}.greeting[data-astro-cid-5vtmhcfp]{margin-right:.22em}h1[data-astro-cid-5vtmhcfp]{font-size:clamp(2.4rem,7vw,4rem)}.bio[data-astro-cid-5vtmhcfp] p{max-width:44ch}.intro-socials[data-astro-cid-5vtmhcfp]{margin-top:.75rem}}@media(max-width:600px){h1[data-astro-cid-5vtmhcfp]{font-size:clamp(4rem,18vw,5rem);margin-bottom:1.5rem}.greeting[data-astro-cid-5vtmhcfp],.name[data-astro-cid-5vtmhcfp]{display:block}.greeting[data-astro-cid-5vtmhcfp]{font-size:.45em;margin:0 0 .15em}}.featured-section[data-astro-cid-n7gce2fu]{margin-top:4.5rem}.featured-heading[data-astro-cid-n7gce2fu]{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem}h2[data-astro-cid-n7gce2fu]{font-size:1.125rem;letter-spacing:-.025em}.view-all[data-astro-cid-n7gce2fu]{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--text-secondary);font-size:.875rem;text-decoration:none}.view-all[data-astro-cid-n7gce2fu]:hover{color:var(--text-primary);text-decoration:underline}.featured-work[data-astro-cid-n7gce2fu]{display:grid;gap:3.25rem}.work-spread[data-astro-cid-n7gce2fu]{display:grid;grid-template-columns:.85fr 1.6fr;align-items:center;gap:2.5rem}.work-spread[data-astro-cid-n7gce2fu]:nth-child(2n){grid-template-columns:1.6fr .85fr}.work-spread[data-astro-cid-n7gce2fu]:nth-child(2n) .work-copy[data-astro-cid-n7gce2fu]{order:1}.work-copy[data-astro-cid-n7gce2fu]{min-width:0}h3[data-astro-cid-n7gce2fu]{font-size:clamp(1.5rem,2.5vw,1.875rem);letter-spacing:-.03em;margin-bottom:.75rem}h3[data-astro-cid-n7gce2fu] a[data-astro-cid-n7gce2fu]{text-decoration:none;display:inline}h3[data-astro-cid-n7gce2fu] span[data-astro-cid-n7gce2fu]{display:inline-block;margin-left:.4em;color:var(--text-secondary);font-size:.65em}.work-copy[data-astro-cid-n7gce2fu] p[data-astro-cid-n7gce2fu]{color:var(--text-secondary);font-size:.9375rem;line-height:1.75}.work-copy[data-astro-cid-n7gce2fu] .project-links:not(:empty){margin-top:1.25rem}.work-art[data-astro-cid-n7gce2fu]{min-width:0}.work-art[data-astro-cid-n7gce2fu] .project-preview{margin-bottom:0}@media(hover:hover)and (pointer:fine){h3[data-astro-cid-n7gce2fu] a[data-astro-cid-n7gce2fu]:hover span[data-astro-cid-n7gce2fu]{color:var(--text-primary);transform:translate(2px,-2px)}}@media(prefers-reduced-motion:no-preference){h3[data-astro-cid-n7gce2fu] span[data-astro-cid-n7gce2fu]{transition:transform .16s var(--ease-out)}}@media(max-width:767px){.featured-section[data-astro-cid-n7gce2fu]{margin-top:3rem}.featured-work[data-astro-cid-n7gce2fu]{gap:2.5rem}.work-spread[data-astro-cid-n7gce2fu],.work-spread[data-astro-cid-n7gce2fu]:nth-child(2n){grid-template-columns:1fr;gap:1.25rem}.work-copy[data-astro-cid-n7gce2fu],.work-spread[data-astro-cid-n7gce2fu]:nth-child(2n) .work-copy[data-astro-cid-n7gce2fu]{order:1}h3[data-astro-cid-n7gce2fu]{font-size:1.5rem}.work-copy[data-astro-cid-n7gce2fu] p[data-astro-cid-n7gce2fu]{max-width:48ch}}.sky[data-astro-cid-ee4ysdtu]{min-width:0}.radar[data-astro-cid-ee4ysdtu]{position:relative;width:100%;max-width:440px;aspect-ratio:1;margin:.5rem auto .75rem}.radar-grid[data-astro-cid-ee4ysdtu]{width:100%;height:100%;color:var(--text-secondary);pointer-events:none;mask-image:radial-gradient(ellipse,#000 25%,transparent 72%)}.sky[data-astro-cid-ee4ysdtu]:not([data-map-ready]) .radar-grid[data-astro-cid-ee4ysdtu]{visibility:hidden}.radar-grid[data-astro-cid-ee4ysdtu] text[data-astro-cid-ee4ysdtu]{fill:var(--text-secondary);stroke:none;font:9px var(--mono)}.radar-land[data-astro-cid-ee4ysdtu]{fill:var(--text-primary);opacity:.06}.radar-lake[data-astro-cid-ee4ysdtu]{fill:none;stroke:var(--border);stroke-width:1;vector-effect:non-scaling-stroke}.radar-grid[data-astro-cid-ee4ysdtu] .lake-label[data-astro-cid-ee4ysdtu]{font-size:8px;letter-spacing:.12em;fill:var(--text-tertiary)}.airport-runway[data-astro-cid-ee4ysdtu]{stroke:var(--text-secondary);stroke-width:1.4}.aircraft-layer[data-astro-cid-ee4ysdtu]{position:absolute;inset:0;pointer-events:none}.sky[data-astro-cid-ee4ysdtu]:not([data-intro-ready]) .aircraft-layer[data-astro-cid-ee4ysdtu]{visibility:hidden}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker{position:absolute;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--text-secondary);left:0;top:0;transform:translate(var(--plane-x, 0px),var(--plane-y, 0px)) translate(-50%,-50%);pointer-events:auto;cursor:pointer;border-radius:4px}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker[hidden]{display:none}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker svg{width:21px;height:21px;transform:rotate(var(--heading));pointer-events:none;filter:drop-shadow(0 1px 1px var(--bg))}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker[data-kind=heavy] svg{width:25px;height:25px}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker[data-kind=propeller] svg{width:18px;height:18px}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker[aria-pressed=true]{z-index:3;color:var(--text-primary)}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker:focus-visible{outline:1px dashed var(--text-primary);outline-offset:-2px}.aircraft-label[data-astro-cid-ee4ysdtu]{position:absolute;z-index:4;width:max-content;max-width:min(260px,calc(100% - 24px));left:0;top:0;transform:translate(var(--tooltip-x, 0px),var(--tooltip-y, 0px)) translate(-50%,-100%);padding:.5rem .7rem;border-radius:6px;color:var(--text-primary);background:var(--bg);box-shadow:0 2px 12px #0001;pointer-events:auto}.aircraft-label[data-astro-cid-ee4ysdtu][data-placement=below]{transform:translate(var(--tooltip-x, 0px),var(--tooltip-y, 0px)) translate(-50%)}.aircraft-label[data-astro-cid-ee4ysdtu] strong[data-astro-cid-ee4ysdtu]{display:block;font-size:.8125rem;font-weight:500}.aircraft-label[data-astro-cid-ee4ysdtu] span[data-astro-cid-ee4ysdtu]{display:block;font-size:.6875rem;color:var(--text-secondary)}.nearby-aircraft[data-astro-cid-ee4ysdtu]{position:absolute;z-index:3;left:50%;bottom:1rem;transform:translate(-50%);min-width:225px;max-width:90%;max-height:230px;overflow:auto;padding:.5rem;border-radius:10px;background:var(--surface);box-shadow:0 6px 22px #0003}.nearby-aircraft[data-astro-cid-ee4ysdtu][hidden]{display:none}.nearby-aircraft[data-astro-cid-ee4ysdtu] .nearby-label{display:block;padding:.25rem .5rem;color:var(--text-secondary);font-size:.6875rem}.nearby-aircraft[data-astro-cid-ee4ysdtu] button{display:block;width:100%;min-height:44px;padding:.5rem;border:0;background:transparent;text-align:left;font-size:.8125rem;cursor:pointer}.sky-status[data-astro-cid-ee4ysdtu]{color:var(--text-secondary);font-size:.6875rem;margin-top:.5rem}@media(hover:hover)and (pointer:fine){.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker:hover{color:var(--text-primary)}.nearby-aircraft[data-astro-cid-ee4ysdtu] button:hover{background:var(--bg)}}@media(prefers-reduced-motion:no-preference){.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker{transition:color .16s var(--ease-out)}.sky[data-astro-cid-ee4ysdtu][data-intro-ready] .aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker{animation:aircraft-arrive .42s var(--ease-out) backwards;animation-delay:var(--arrival-delay, 0ms)}.aircraft-layer[data-astro-cid-ee4ysdtu] .aircraft-marker[data-moving=true],.aircraft-label[data-astro-cid-ee4ysdtu][data-moving=true]{transition:transform 2.4s cubic-bezier(.4,0,.2,1)}}@keyframes aircraft-arrive{0%{opacity:0;transform:translate(calc(var(--plane-x) + var(--entry-x)),calc(var(--plane-y) + var(--entry-y))) translate(-50%,-50%)}to{opacity:1}}.home-hero[data-astro-cid-j7pv25f6]{--sky-bleed: clamp(0px, calc((100vw - 896px)/2 - 24px) , 160px);position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:3.5rem;min-height:520px;padding-block:2rem 3rem}.home-hero[data-astro-cid-j7pv25f6] .about{position:relative;z-index:2}.home-hero[data-astro-cid-j7pv25f6] .sky{position:absolute;inset:-1rem calc(-1 * var(--sky-bleed)) 0;pointer-events:none}.home-hero[data-astro-cid-j7pv25f6] .radar{position:absolute;inset:0;width:100%;height:auto;max-width:none;aspect-ratio:auto;margin:0;pointer-events:none}.home-hero[data-astro-cid-j7pv25f6] .radar-grid{--map-shape: radial-gradient(ellipse at 58% 45%, #000 5%, #000a 38%, transparent 72%);opacity:.46;mask-image:linear-gradient(to bottom,transparent,#000 24%,#000 72%,transparent),var(--map-shape);mask-composite:intersect}.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker{color:var(--text-tertiary)}.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker[aria-pressed=true],.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker:hover,.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker:focus-visible{color:var(--text-primary)}.home-hero[data-astro-cid-j7pv25f6] .sky-status{position:absolute;bottom:0;left:var(--sky-bleed)}.home-hero[data-astro-cid-j7pv25f6] .nearby-aircraft{left:67%;bottom:1rem;pointer-events:auto}html:not([data-client-navigation]) #transition-wrapper:has(.home-hero){animation:none}@media(max-width:959px){.home-hero[data-astro-cid-j7pv25f6]{--sky-bleed: 1.35rem;grid-template-columns:1fr;min-height:380px;padding-block:3rem 4.5rem}.home-hero[data-astro-cid-j7pv25f6] .radar-grid{opacity:.3}.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker{color:color-mix(in srgb,var(--text-secondary) 30%,transparent)}.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker[aria-pressed=true],.home-hero[data-astro-cid-j7pv25f6] .aircraft-marker:focus-visible{color:var(--text-primary)}.home-hero[data-astro-cid-j7pv25f6] .nearby-aircraft{left:50%}}@media(max-width:600px){.home-hero[data-astro-cid-j7pv25f6]{min-height:0;padding-block:1rem 2rem}.home-hero[data-astro-cid-j7pv25f6] .radar-grid text{display:none}.home-hero[data-astro-cid-j7pv25f6] .radar-grid{--map-shape: radial-gradient(ellipse at 85% 25%, #000, transparent 68%)}.home-hero[data-astro-cid-j7pv25f6] .aircraft-layer{mask-image:linear-gradient(to bottom,#000,#000 35%,transparent 76%)}}
