:root{--split:minmax(0,1.4fr) minmax(0,1fr);--split-gap:5vw;--view-inset:clamp(14px,1.6vw,28px)}.project-toggle .view{margin-right:var(--view-inset)}.project-toggle strong{padding-left:var(--view-inset)}@media (max-width:700px){.project-toggle>span:nth-child(2){padding-inline:var(--view-inset)}}.project-intro>p{padding-left:var(--view-inset)}@media (min-width:701px){.project-toggle{grid-template-columns:var(--split);column-gap:var(--split-gap)}.project-toggle>span:nth-child(2){padding-right:calc(80px + var(--view-inset));grid-area:1/2}.project-toggle .view{grid-area:1/2;justify-self:end}.journal-feature{grid-template-columns:calc((100% - var(--split-gap)) * 7 / 12) minmax(0,1fr)}.journal-feature-copy{padding-left:var(--split-gap)}.contact-form{padding-top:5px}}
.about-hero.ah-sky{isolation:isolate;color:#202943;background:#a9d4ed;overflow:hidden}.ah-sky .about-hero-copy,.ah-sky .down{z-index:2;color:inherit;position:relative}.ah-sky .about-hero-copy h1,.ah-sky .about-hero-copy p{color:inherit;transition:color 1.8s}.ah-sky{transition:color 1.8s}:root[data-sky-night=true] .ah-sky{color:#f8f8f6}.ah-sky .sky-environment{z-index:-1;pointer-events:none;background:#a9d4ed;position:absolute;inset:0;overflow:hidden}.ah-sky .sky-layer{filter:blur(30px);animation:32s ease-in-out infinite alternate sky-drift;position:absolute;inset:-12%;transform:translate(-1%)scale(1.04)}.ah-sky .sky-morning{background:radial-gradient(at 10% 5%,#238de4,#0000 62%),linear-gradient(135deg,#69b9ef,#c6e6f2 65%,#e7eef0)}.ah-sky .sky-sunset{opacity:var(--sky-sunset,0);background:radial-gradient(at 5% 70%,#df98b0,#0000 65%),linear-gradient(165deg,#879ac8,#e2bad0 48%,#ffd59b);transition:opacity 2s linear}.ah-sky .sky-night{opacity:var(--sky-night,0);background:radial-gradient(at 80% 20%,#123b74,#0000 55%),radial-gradient(at 10% 95%,#233862,#0000 50%),linear-gradient(130deg,#050913,#0b1632 65%,#07101d);transition:opacity 2s}.ah-sky .sky-glass{-webkit-backdrop-filter:blur(24px)saturate(.88);backdrop-filter:blur(24px)saturate(.88);background:linear-gradient(115deg,#ffffff21,#ffffff05 50%,#ffffff12);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff30}.ah-sky .sky-glass:after{content:"";opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.ah-sky .sky-stars{opacity:var(--sky-night,0);transition:opacity 2s;position:absolute;inset:0}.ah-sky .down{font-size:10px;position:absolute;bottom:16px}@keyframes sky-drift{to{transform:translate(2%,-2%)scale(1.09)}}@media (max-width:700px){.about-hero.ah-sky{min-height:560px;padding:55px 17px}.ah-sky .sky-layer{filter:blur(18px)}}@media (prefers-reduced-motion:reduce){.ah-sky .sky-layer{animation:none}.ah-sky,.ah-sky .sky-layer,.ah-sky .sky-stars,.ah-sky .about-hero-copy h1,.ah-sky .about-hero-copy p{transition:none}}@media (prefers-reduced-transparency:reduce){.ah-sky .sky-glass{-webkit-backdrop-filter:none;backdrop-filter:none}}.ah-sky .sky-sun{--sun-size:clamp(330px,42vw,510px);pointer-events:none;opacity:calc(1 - var(--sky-night,0));transform:translate3d(calc(8% + 84% * var(--sky-sun-x,.25)),calc(80% * (1 - var(--sky-sun-arc,.7)) + var(--sky-sun-arc,.7) * (var(--sun-size) / 2 - 24px)),0);transition:opacity 2s;position:absolute;inset:0}.ah-sky .sky-sun:before{content:"";width:var(--sun-size);height:var(--sun-size);filter:blur(30px);background:radial-gradient(circle closest-side,#fff2adeb 0%,#ffedacb8 35%,#ffe5a36b 64%,#ffd59400 100%);border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.ah-sky .sky-sun{transition:none}}.ah-sky .sky-star{opacity:.16;border:0;border-radius:50%;margin:0;padding:0;font-size:0;line-height:0;animation:9s ease-in-out infinite sky-faint;display:block;position:absolute}.ah-sky .sky-star-bright{animation-name:sky-bright}.ah-sky .sky-star svg{filter:drop-shadow(0 0 2px #cbdcff88);width:100%;height:100%;display:block;overflow:visible}.ah-sky .sky-star-bright svg{filter:drop-shadow(0 0 4px #e5efffcc)}.ah-sky .sky-star-bright:after{content:"";pointer-events:none;background:radial-gradient(circle,#dceaff66,#0000 70%);border-radius:50%;position:absolute;inset:-5px}@keyframes sky-faint{0%,to{opacity:.2}40%{opacity:var(--star-peak,.75)}65%{opacity:.3}82%{opacity:.45}}@keyframes sky-bright{0%,45%,to{opacity:.25}60%{opacity:1}73%{opacity:.35}82%{opacity:.7}}:root:not([data-sky-night=true]) .ah-sky .sky-star{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.ah-sky .sky-star{opacity:.24;animation:none}.ah-sky .sky-star-bright{opacity:.5}}.contact-sky{isolation:isolate;color:#202943;background:#a9d4ed;position:relative;overflow:hidden}.contact-sky .contact-grid{z-index:1;position:relative}.contact-sky .contact-grid h1{color:inherit;transition:color 1.8s}.contact-sky .contact-form{color:#30314f;background:#f8f8f6f0;border:1px solid #fff9;border-radius:8px;align-self:start;padding:clamp(20px,3vw,44px)}.contact-sky .contact-form input,.contact-sky .contact-form select,.contact-sky .contact-form textarea{color:#30314f;background:0 0}.contact-sky .contact-form input::placeholder,.contact-sky .contact-form textarea::placeholder{color:#656578;opacity:1}.contact-sky .contact-form select option{color:#30314f;background:#f8f8f6}.contact-sky .contact-grid>div a:focus-visible{outline-color:currentColor}@media (min-width:701px) and (min-height:580px){.contact-sky .contact-form{padding-block:clamp(12px,1.8vh,40px)}}@media (prefers-reduced-motion:reduce){.contact-sky .contact-grid h1{transition:none}}body.work-sky{isolation:isolate;color:#202943;background:#a9d4ed}html:has(body.work-sky){overscroll-behavior-y:none}.work-sky .sky-environment{position:fixed}.work-sky .work-hero{position:relative}.work-sky .work-hero h1,.work-sky .work-index{color:inherit}.work-sky .work-project{color:var(--ink);background:var(--paper)}.work-sky .future-work,.work-sky .future-work h2,.work-sky .future-work p,.work-sky .future-work-symbol{color:inherit}.work-sky .future-work{transition:border-color 1.8s}:root:not([data-sky-night=true]) .work-sky .future-work{border-top-color:#202943}.work-sky .footer{background:var(--paper);box-shadow:0 0 0 100vmax var(--paper);clip-path:inset(0 -100vmax)}body.about,body.contact{--sky-header:82px}@media (max-width:700px){body.about,body.contact{--sky-header:70px}}.about-hero.ah-sky,.contact-sky{margin-top:calc(-1 * var(--sky-header,0px));padding-top:var(--sky-header,0px)}.about-hero.ah-sky{min-height:calc(580px + var(--sky-header,0px))}@media (max-width:900px){.about-hero.ah-sky{min-height:calc(500px + var(--sky-header,0px))}}@media (max-width:700px){.about-hero.ah-sky{min-height:calc(560px + var(--sky-header,0px));padding-top:calc(55px + var(--sky-header,0px))}}.work-sky .site-header:before{width:min(90%,1450px);left:50%;right:auto;translate:-50%}@media (max-width:900px){.work-sky .site-header:before{width:90%}}@media (max-width:700px){.work-sky .site-header:before{width:calc(100% - 34px)}}@supports (animation-timeline:view()){.work-sky .site-header:before{display:none}.work-sky .work-index{overflow:clip}.work-sky .work-index .work-project{--clip-hold:calc(var(--hold) + 2px);background:0 0;border-top:0}.work-sky .work-index .work-project:last-child{--clip-hold:0px}.work-sky .work-index .work-project,.work-sky .work-index .project-toggle{box-shadow:none}.work-sky .work-index .project-panel{opacity:1;clip-path:inset(-40px 0 calc(-1 * var(--own-hold)) 0);view-timeline:--work-panel block;animation:linear both work-panel-window;animation-timeline:--work-panel;animation-range:exit-crossing calc(-1 * var(--pin) - 40px) exit-crossing calc(100% - var(--pin) + var(--clip-hold));background:0 0;padding-top:0}.work-sky .work-index .project-panel-inner{background:var(--paper);box-shadow:0 -40px 0 var(--paper),0 var(--own-hold) 0 var(--paper);animation:linear both work-panel-content;animation-timeline:--work-panel;animation-range:exit-crossing calc(-1 * var(--pin) - 40px) exit-crossing calc(100% - var(--pin) + var(--clip-hold));padding-top:28px}@media (max-width:700px){.work-sky .work-index .project-panel-inner{padding-top:20px}}.work-sky .work-index .project-panel-inner:not(:has(>.project-intro)){padding-top:0}.work-sky .work-index .work-project:last-child .project-panel-inner{border-radius:0 0 var(--radius) var(--radius)}.work-sky .work-index .work-project:not(:last-child):has(>.project-panel[hidden]):after{background:linear-gradient(var(--paper) var(--radius),transparent 0);animation:linear both work-header-covered;animation-timeline:--work-chapter;animation-range:exit-crossing calc(100% - var(--pin) - var(--hold)) exit-crossing calc(100% - var(--pin) - var(--hold) + 1px)}}@keyframes work-panel-window{0%{translate:0}to{translate:0 calc(100% + 40px + var(--clip-hold,0px))}}@keyframes work-panel-content{0%{translate:0}to{translate:0 calc(-100% - 40px - var(--clip-hold,0px))}}
