@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800&display=swap);@font-face{font-display:swap;font-family:BestermindRegular;src:url(/static/media/BestermindRegular.e58a192233afb30a6a59.ttf) format("truetype")}:root{--paper:#fff;--paper-2:#f4f2ef;--ink:#0d0d0d;--ink-60:#5c5c5c;--ink-35:#9a9a9a;--rule:#ddd9d3;--accent:#e2572a;--sans:"Poppins",sans-serif;--display:"Poppins",sans-serif;--brand:"BestermindRegular","Poppins",sans-serif;--primaryFont:var(--sans);--page:1240px;--gutter:2.5rem;--ease:cubic-bezier(0.22,0.61,0.36,1)}*,:after,:before{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body,html{background-color:#fff;background-color:var(--paper);max-width:100vw;overflow-x:hidden;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0d0d0d;color:var(--ink);font-family:Poppins,sans-serif;font-family:var(--sans);font-size:1rem;font-weight:400;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}img{-webkit-touch-callout:none;max-width:100%;-webkit-user-select:none;user-select:none}::selection{background:#e2572a;background:var(--accent);color:#fff;color:var(--paper)}::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:#f4f2ef;background:var(--paper-2)}::-webkit-scrollbar-thumb{background:#0d0d0d;background:var(--ink)}:focus-visible{outline:2px solid #e2572a;outline:2px solid var(--accent);outline-offset:3px}.section{background-color:#fff;background-color:var(--paper);padding:4.5rem 0;width:100%}.section--dark{background:#0d0d0d;background:var(--ink);color:#fff;color:var(--paper)}.shell{margin:0 auto;max-width:1240px;max-width:var(--page);padding:0 2.5rem;padding:0 var(--gutter);width:100%}.section-head{margin-bottom:2.25rem}.section-head__title{font-family:Poppins,sans-serif;font-family:var(--display);font-size:clamp(2.4rem,7vw,5rem);font-weight:700;letter-spacing:-.045em;line-height:.95;text-transform:lowercase}.section-head__note{color:#9a9a9a;color:var(--ink-35);display:inline-block;font-size:.82rem;font-weight:500;letter-spacing:.02em;margin-top:1rem}.eyebrow{color:#e2572a;color:var(--accent);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.btn,.eyebrow{font-weight:600}.btn{align-items:center;border:2px solid #0d0d0d;border:2px solid var(--ink);cursor:pointer;display:inline-flex;font-size:.85rem;height:52px;justify-content:center;letter-spacing:.02em;padding:0 2rem;transition:background-color .3s cubic-bezier(.22,.61,.36,1),color .3s cubic-bezier(.22,.61,.36,1),border-color .3s cubic-bezier(.22,.61,.36,1);transition:background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}.btn--solid{background:#0d0d0d;background:var(--ink);color:#fff;color:var(--paper)}.btn--solid:hover{background:#e2572a;background:var(--accent);border-color:#e2572a;border-color:var(--accent)}.btn--ghost{background:#0000;color:#0d0d0d;color:var(--ink)}.btn--ghost:hover{background:#0d0d0d;background:var(--ink);color:#fff;color:var(--paper)}.link-wipe{display:inline-block;padding-bottom:2px;position:relative}.link-wipe:after{background:currentColor;bottom:0;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,.61,.36,1);transition:transform .4s var(--ease);width:100%}.link-wipe:focus-visible:after,.link-wipe:hover:after{transform:scaleX(1)}@media (max-width:900px){:root{--gutter:1.75rem}.section{padding:3.25rem 0}.section-head{margin-bottom:1.75rem}}@media (max-width:560px){:root{--gutter:1.25rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.about__grid{grid-gap:4.5rem;align-items:start;display:grid;gap:4.5rem;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.about__prose p{color:var(--ink-60);font-size:1.0625rem;line-height:1.8;max-width:58ch}.about__prose p+p{margin-top:1.6rem}.about__prose p:first-child{color:var(--ink);font-size:clamp(1.15rem,1.9vw,1.45rem);font-weight:500;letter-spacing:-.015em;line-height:1.55}.about__facts{border-top:2px solid var(--ink)}.about__fact{border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:.3rem;padding:1.15rem 0}.about__fact dt{color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.about__fact dd{color:var(--ink);font-size:.95rem;margin:0}@media (max-width:900px){.about__grid{gap:2.5rem;grid-template-columns:1fr}}.backToTop{background:var(--ink);border:none;bottom:1.5rem;color:var(--paper);cursor:pointer;display:grid;font-size:1.05rem;height:44px;opacity:0;place-items:center;pointer-events:none;position:fixed;right:1.5rem;transform:translateY(12px);transition:opacity .35s var(--ease),transform .35s var(--ease),background-color .25s var(--ease);width:44px;z-index:150}.backToTop.is-visible{opacity:1;pointer-events:auto;transform:none}.backToTop:hover{background:var(--accent)}@media (max-width:560px){.backToTop{bottom:1rem;height:40px;right:1rem;width:40px}}.contacts__grid{grid-gap:4.5rem;align-items:start;display:grid;gap:4.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.contacts__lede{font-family:var(--display);font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.01em;line-height:1.4;max-width:40ch}.contacts__details{border-top:1px solid var(--rule);margin-top:2.5rem}.contacts__detail{grid-gap:1rem;border-bottom:1px solid var(--rule);display:grid;gap:1rem;grid-template-columns:92px minmax(0,1fr);padding:.9rem 0}.contacts__detail dt{color:var(--ink-35);font-family:var(--sans);font-size:.7rem;letter-spacing:.1em;padding-top:.2rem;text-transform:uppercase}.contacts__detail dd{font-size:.95rem;margin:0;overflow-wrap:anywhere}.contacts__socials{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}.contacts__social{align-items:center;border:1px solid var(--rule);color:var(--ink-60);display:inline-flex;font-family:var(--sans);font-size:.72rem;gap:.45rem;letter-spacing:.06em;padding:.5rem .85rem;transition:border-color .25s var(--ease),color .25s var(--ease)}.contacts__social:hover{border-color:var(--ink);color:var(--ink)}.contacts__social svg:last-child{color:var(--ink-35);font-size:.85em}.contacts__form{gap:1.5rem}.contacts__form,.field{display:flex;flex-direction:column}.field{gap:.5rem}.field label{color:var(--ink-35);font-family:var(--sans);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.field input,.field textarea{background:#0000;border:none;border-bottom:1px solid var(--rule);color:var(--ink);font-size:1rem;padding:.75rem 0;resize:vertical;transition:border-color .3s var(--ease);width:100%}.field input::placeholder,.field textarea::placeholder{color:var(--ink-35)}.field input:focus,.field textarea:focus{border-bottom-color:var(--ink);outline:none}.contacts__submit{align-self:flex-start;margin-top:.5rem}.contacts__submit:disabled{cursor:not-allowed;opacity:.55}.contacts__status{border-left:2px solid var(--rule);font-size:.9rem;padding-left:.85rem}.contacts__status--ok{border-left-color:var(--ink);color:var(--ink)}.contacts__status--error{border-left-color:var(--accent);color:var(--accent)}@media (max-width:900px){.contacts__grid{gap:3rem;grid-template-columns:1fr}}.now{--now-dim:#8f8a85}.now .section-head__note{color:var(--now-dim)}.now__list{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.now__item{border-top:2px solid var(--paper);padding:1.75rem 2rem 1.75rem 0}.now__list>.now__item:nth-child(2n){padding-left:2rem}.now__label{color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.now__value{color:var(--paper);font-family:var(--display);font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;margin:.85rem 0 0;text-transform:lowercase}@media (max-width:820px){.now__list{grid-template-columns:1fr}.now__item,.now__list>.now__item:nth-child(2n){padding:1.4rem 0}}.cursor{left:0;margin:-24px 0 0 -24px;pointer-events:none;position:fixed;top:0;z-index:9999}.cursor__ring{background:#0000;border:1.5px solid var(--accent);border-radius:50%;display:block;height:48px;width:48px}body.has-custom-cursor,body.has-custom-cursor [data-cursor],body.has-custom-cursor a,body.has-custom-cursor button{cursor:none}body.has-custom-cursor input,body.has-custom-cursor textarea{cursor:text}@media (pointer:coarse){.cursor{display:none}}.exp__tabs{border-bottom:1px solid var(--rule);display:flex;gap:2rem;margin-bottom:2rem}.exp__tab{align-items:baseline;background:none;border:none;color:var(--ink-35);cursor:pointer;display:inline-flex;font-family:var(--display);font-size:1.05rem;font-weight:600;gap:.45rem;letter-spacing:-.02em;padding:0 0 .9rem;position:relative;transition:color .25s var(--ease)}.exp__tab.is-active,.exp__tab:hover{color:var(--ink)}.exp__tabCount{color:var(--ink-35);font-family:var(--sans);font-size:.7rem;font-weight:500}.exp__tab.is-active .exp__tabCount{color:var(--accent)}.exp__tabBar{background:var(--ink);bottom:-1px;height:2px;left:0;position:absolute;right:0}.exp__panel{min-height:1px}.exp__orgs{grid-gap:2px;background:var(--ink);border:2px solid var(--ink);display:grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.exp__orgItem{background:var(--paper);padding:1.85rem;transition:background-color .35s var(--ease)}.exp__orgItem:hover{background:var(--paper-2)}.exp__orgRole{font-family:var(--display);font-size:1.35rem;font-weight:700;letter-spacing:-.035em;line-height:1.12;margin-top:.55rem;text-transform:lowercase}.exp__orgName{color:var(--ink-60);font-size:.85rem;font-weight:500;margin-top:.35rem}.exp__orgDesc{color:var(--ink-60);font-size:.89rem;line-height:1.65;margin-top:.95rem}.exp__work{border-top:2px solid var(--ink);list-style:none;margin:0;padding:0}.exp__workItem{grid-gap:2.5rem;border-bottom:1px solid var(--rule);display:grid;gap:2.5rem;grid-template-columns:150px minmax(0,1fr);padding:1.9rem 0}.exp__period{color:var(--accent);font-size:.8rem;font-weight:600;letter-spacing:.04em;padding-top:.5rem}.exp__role{font-family:var(--display);font-size:clamp(1.4rem,2.8vw,2rem);font-weight:700;letter-spacing:-.04em;line-height:1.06;text-transform:lowercase}.exp__company{align-items:center;display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:500;gap:.7rem;margin-top:.6rem}.exp__company a{align-items:center;display:inline-flex;gap:.25rem}.exp__company a svg{font-size:.85em}.exp__location{color:var(--ink-35);font-size:.78rem;font-weight:400}.exp__location:before{content:"/ "}.exp__summary{color:var(--ink-60);margin-top:1rem;max-width:60ch}.exp__points{grid-gap:.7rem;display:grid;gap:.7rem;list-style:none;margin:1.3rem 0 0;max-width:66ch;padding:0}.exp__points li{color:var(--ink-60);font-size:.94rem;line-height:1.7;padding-left:1.5rem;position:relative}.exp__points li:before{background:var(--accent);content:"";height:2px;left:0;position:absolute;top:.68em;width:14px}.exp__cert{align-items:center;color:var(--accent);display:inline-flex;font-size:.8rem;font-weight:600;gap:.3rem;margin-top:1.4rem}.exp__edu{border-top:2px solid var(--ink);margin-top:2.25rem;padding-top:1.4rem}.exp__eduRow{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:150px minmax(0,1fr);margin-top:1.1rem}.exp__eduPeriod{color:var(--accent);font-size:.8rem;font-weight:600;letter-spacing:.04em;padding-top:.35rem}.exp__eduCourse{font-family:var(--display);font-size:1.5rem;font-weight:700;letter-spacing:-.04em;line-height:1.06;text-transform:lowercase}.exp__eduInst{align-items:baseline;display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:500;gap:.7rem;margin-top:.35rem}@media (max-width:820px){.exp__eduRow,.exp__workItem{gap:.85rem;grid-template-columns:1fr}.exp__eduPeriod,.exp__period{padding-top:0}.exp__orgs{grid-template-columns:1fr}}@media (max-width:560px){.exp__tabs{gap:1.5rem}.exp__orgItem{padding:1.5rem}}.footer{background:var(--ink);color:var(--paper);padding:2.5rem 0}.footer__inner{align-items:baseline;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.footer__name{font-family:var(--brand);font-size:1.6rem;line-height:1}.footer__meta{color:#ffffff8c;font-family:var(--sans);font-size:.72rem;letter-spacing:.06em}.landing{background:var(--paper);padding:clamp(2.5rem,7vh,5rem) 0 clamp(3rem,7vh,5rem)}.landing__name{font-family:var(--display);font-size:clamp(1.9rem,10.2vw,9rem);font-weight:700;letter-spacing:-.055em;line-height:.9;overflow-wrap:break-word;text-transform:lowercase}.landing__lineMask{display:block;overflow:hidden;padding-bottom:.05em}.landing__line{display:inline-block}.landing__tagline{color:var(--ink);font-size:clamp(1.25rem,2.6vw,2rem);font-weight:500;letter-spacing:-.025em;line-height:1.32;margin-top:clamp(1.5rem,3vw,2.25rem);max-width:34ch}.landing__meta{grid-gap:clamp(2rem,5vw,5rem);border-top:2px solid var(--ink);display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);margin-top:clamp(1.75rem,3.5vw,2.75rem);padding-top:clamp(1.5rem,3vw,2.25rem)}.landing__desc{color:var(--ink-60);font-size:clamp(.95rem,1.15vw,1.08rem);line-height:1.75;max-width:54ch}.landing__actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.landing__socials{align-items:center;border-left:2px solid var(--rule);display:flex;gap:.25rem;margin-left:.6rem;padding-left:1.1rem}.landing__social{color:var(--ink-35);display:grid;font-size:1.05rem;height:40px;place-items:center;transition:color .25s var(--ease),transform .3s var(--ease);width:40px}.landing__social:hover{color:var(--accent);transform:translateY(-3px)}.landing__roles{list-style:none;margin:0;padding:0}.landing__role{align-items:center;color:var(--ink-35);display:flex;font-size:clamp(.78rem,1.05vw,.92rem);font-weight:600;gap:.65rem;letter-spacing:.13em;line-height:2.15;text-transform:uppercase;transition:color .5s var(--ease)}.landing__role.is-active{color:var(--ink)}.landing__roleBar{background:var(--accent);flex-shrink:0;height:2px;transition:width .5s var(--ease);width:0}.landing__role.is-active .landing__roleBar{width:28px}.landing__location{border-top:1px solid var(--rule);color:var(--ink-60);font-size:.8rem;font-weight:500;margin-top:1.25rem;padding-top:1.25rem}@media (max-width:900px){.landing__meta{gap:2rem;grid-template-columns:1fr}.landing__metaRight{grid-gap:1.5rem 2rem;align-items:start;display:grid;gap:1.5rem 2rem;grid-template-columns:repeat(2,minmax(0,1fr))}.landing__location{align-self:end;border-top:none;margin-top:0;padding-top:0}}@media (max-width:560px){.landing__metaRight{gap:1.25rem;grid-template-columns:1fr}.landing__actions{gap:.6rem}.btn{flex:1 1 140px;padding:0 1.25rem}.landing__socials{border-left:none;justify-content:flex-start;margin-left:0;padding-left:0;width:100%}}.nav{background:var(--paper);border-bottom:1px solid #0000;position:-webkit-sticky;position:sticky;top:0;transition:border-color .3s var(--ease),background-color .3s var(--ease);width:100%;z-index:200}.nav--scrolled{backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);background:#ffffffeb;border-bottom-color:var(--rule)}.nav__inner{height:72px;justify-content:flex-end}.nav__inner,.nav__links{align-items:center;display:flex;gap:2rem}.nav__link{color:var(--ink-60);font-size:.9rem;transition:color .25s var(--ease)}.nav__link:hover{color:var(--ink)}.nav__cv{border:1px solid var(--ink);font-family:var(--sans);font-size:.75rem;letter-spacing:.1em;padding:.5rem 1.1rem;text-transform:uppercase;transition:background-color .25s var(--ease),color .25s var(--ease)}.nav__cv:hover{background:var(--ink);color:var(--paper)}.langToggle{border:1px solid var(--rule);display:inline-flex}.langToggle__btn{background:none;border:none;color:var(--ink-35);cursor:pointer;font-size:.7rem;font-weight:600;letter-spacing:.08em;padding:.4rem .6rem;transition:color .25s var(--ease),background-color .25s var(--ease)}.langToggle__btn:hover{color:var(--ink)}.langToggle__btn.is-active{background:var(--ink);color:var(--paper)}.nav__panelFoot{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-top:1.75rem}.nav__burger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:6px;height:40px;justify-content:center;padding:0;width:40px}.nav__burger span{background:var(--ink);display:block;height:1.5px;transition:transform .35s var(--ease);width:24px}.nav__burger.is-open span:first-child{transform:translateY(3.75px) rotate(45deg)}.nav__burger.is-open span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.nav__scrim{background:#14110f47;display:none;inset:72px 0 0 0;opacity:0;pointer-events:none;position:fixed;transition:opacity .35s var(--ease)}.nav__scrim.is-open{opacity:1;pointer-events:auto}.nav__panel{background:var(--paper);border-bottom:1px solid var(--rule);display:none;left:0;max-height:calc(100vh - 72px);overflow-y:auto;padding:1.5rem var(--gutter) 2.25rem;position:fixed;right:0;top:72px;transform:translateY(-105%);transition:transform .45s var(--ease)}.nav__panel.is-open{transform:translateY(0)}.nav__panelLinks{display:flex;flex-direction:column}.nav__panelLink{align-items:baseline;border-bottom:1px solid var(--rule);display:flex;font-family:var(--display);font-size:1.6rem;gap:1rem;letter-spacing:-.01em;opacity:0;padding:1rem 0;transform:translateY(-8px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.nav__panel.is-open .nav__panelLink{opacity:1;transform:none}.nav__panelCv{border:1px solid var(--ink);display:inline-block;font-family:var(--sans);font-size:.75rem;letter-spacing:.1em;padding:.75rem 1.5rem;text-transform:uppercase}@media (max-width:980px){.nav__links{display:none}.nav__burger{display:flex}.nav__panel,.nav__scrim{display:block}}@media (max-width:560px){.nav__inner{height:64px}.nav__scrim{inset:64px 0 0 0}.nav__panel{max-height:calc(100vh - 64px);top:64px}.nav__panelLink{font-size:1.4rem}}.projects__lede{color:var(--ink-60);font-size:1.0625rem;line-height:1.7;margin:-.75rem 0 2rem;max-width:56ch}.projects__filter{border-bottom:2px solid var(--ink);display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;padding-bottom:1.25rem}.projects__filterBtn{background:none;border:1px solid var(--rule);color:var(--ink-60);cursor:pointer;font-size:.78rem;font-weight:600;letter-spacing:.02em;padding:.5rem 1rem;position:relative;transition:color .25s var(--ease),border-color .25s var(--ease),background-color .25s var(--ease)}.projects__filterBtn:hover{border-color:var(--ink);color:var(--ink)}.projects__filterBtn.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.projects__filterCount{color:var(--ink-35);font-size:.68rem;font-weight:500;margin-left:.45rem}.projects__filterBtn.is-active .projects__filterCount{color:var(--accent)}.projects__groupHead{align-items:baseline;border-bottom:1px solid var(--rule);display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:.85rem}.projects__groupTitle{font-family:var(--display);font-size:clamp(1.2rem,2.4vw,1.6rem);font-weight:700;letter-spacing:-.035em;line-height:1.1;text-transform:lowercase}.projects__groupNote{color:var(--ink-35);font-size:.78rem;font-weight:500}.projects__more{margin-top:4.5rem}.projects__empty{color:var(--ink-60);font-size:.95rem;padding:3rem 0}.projects__featured{grid-gap:3.5rem;display:grid;gap:3.5rem}.projects__all{border-top:2px solid var(--ink);margin-top:3.5rem}.projects__allLink{align-items:center;display:inline-flex;font-family:var(--display);font-size:clamp(1.15rem,2.2vw,1.5rem);font-weight:700;gap:.7rem;letter-spacing:-.03em;padding:1.5rem 0 0;text-transform:lowercase;transition:gap .3s var(--ease),color .25s var(--ease)}.projects__allLink:hover{color:var(--accent);gap:1.15rem}.projects__allCount{color:var(--ink-35);font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:none}.projects__grid{grid-gap:3rem 2.5rem;display:grid;gap:3rem 2.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project,.projects__cell{display:flex}.project{flex-direction:column;width:100%}.project__media{aspect-ratio:5/4;background:var(--paper-2);overflow:hidden;position:relative}.project__media img{display:block;height:100%;object-fit:cover;object-position:top center;width:100%}.project__media--contain{background:var(--paper-2)}.project__media--contain img{object-fit:contain;object-position:center;padding:3.5rem}.project__media--empty{background:var(--paper-2);border:1px solid var(--rule);display:grid;padding:2rem;place-items:center}.project__mediaMark{color:var(--ink-35);font-family:var(--display);font-size:clamp(1.5rem,3vw,2.3rem);font-weight:700;letter-spacing:-.04em;line-height:1.05;text-align:center;text-transform:lowercase}.project__badges{display:flex;gap:2px;justify-content:space-between;left:0;pointer-events:none;position:absolute;right:0;top:0}.project__role,.project__status{font-size:.68rem;font-weight:600;letter-spacing:.06em;padding:.5rem .85rem}.project__role{background:var(--ink);color:var(--paper)}.project__status{background:var(--accent);color:var(--paper)}.project__body{background:var(--paper);display:flex;flex:1 1;flex-direction:column;margin:-2.25rem 0 0 -1.5rem;padding:1.75rem 1.75rem 0 0;position:relative;z-index:1}.project__name{font-family:var(--display);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;letter-spacing:-.04em;line-height:1.02;text-transform:lowercase}.project__kind{align-items:baseline;color:var(--accent);display:flex;flex-wrap:wrap;font-size:.85rem;font-weight:500;gap:.6rem;margin-top:.5rem}.project__context{color:var(--ink-35);font-size:.78rem;font-weight:400}.project__context:before{content:"/ "}.project__desc{color:var(--ink-60);font-size:.94rem;line-height:1.7;margin-top:1rem}.project__tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:1.5rem 0 0;padding:0}.project__tags li{background:var(--paper-2);color:var(--ink-60);font-size:.68rem;font-weight:500;letter-spacing:.02em;padding:.35rem .7rem}.project__links{display:flex;gap:1.75rem;margin-top:auto;padding-top:1.75rem}.project__link{align-items:center;display:inline-flex;font-size:.8rem;font-weight:600;gap:.35rem}.project--featured{grid-gap:0;align-items:center;display:grid;gap:0;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.project--featured .project__media{aspect-ratio:4/3}.project--featured .project__body{flex:initial;margin:0 0 0 -3.5rem;padding:2.75rem 0 2.75rem 2.75rem}.project--featured .project__name{font-size:clamp(2rem,4vw,3.1rem);line-height:.98}.project--featured .project__desc{font-size:1rem;max-width:46ch}.project--featured .project__links{margin-top:0;padding-top:2rem}.project--featured .project__badges{justify-content:flex-start}.project--featured.is-flipped .project__badges{justify-content:flex-end}.project--featured.is-flipped .project__media{order:2}.project--featured.is-flipped .project__body{margin:0 -3.5rem 0 0;order:1;padding:2.75rem 2.75rem 2.75rem 0}@media (max-width:1000px){.project--featured{grid-template-columns:minmax(0,1fr)}.project--featured .project__media,.project--featured.is-flipped .project__media{aspect-ratio:5/4;order:0}.project--featured .project__body,.project--featured.is-flipped .project__body{margin:-2.25rem 0 0 -1.5rem;order:0;padding:1.75rem 1.75rem 0 0}.projects__featured{gap:2.75rem}.project--featured .project__badges,.project--featured.is-flipped .project__badges{justify-content:space-between}}@media (max-width:900px){.projects__grid{gap:2.5rem;grid-template-columns:1fr}.projects__lede{margin:-.5rem 0 1.5rem}.projects__filter{margin-bottom:2.25rem}.projects__more{margin-top:3.25rem}.project__media--contain img{padding:2.25rem}.project--featured .project__body,.project--featured.is-flipped .project__body,.project__body{margin-left:-1rem;margin-right:0;padding-right:1rem}.project--featured.is-flipped .project__body{margin-left:-1rem}}.skills__lede{color:var(--ink-60);font-size:1.0625rem;line-height:1.7;margin:-.75rem 0 2.5rem;max-width:56ch}.skills__capability{grid-gap:2.5rem;align-items:start;border-top:2px solid var(--ink);display:grid;gap:2.5rem;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);padding:1.6rem 0}.skills__capabilities>.skills__capability:last-child{border-bottom:2px solid var(--ink)}.skills__capabilityName{font-family:var(--display);font-size:clamp(1.25rem,2.4vw,1.75rem);font-weight:700;letter-spacing:-.038em;line-height:1.08;text-transform:lowercase}.skills__capabilityDesc{color:var(--ink-60);font-size:.97rem;line-height:1.72;max-width:60ch}.skills__tech{margin-top:3.5rem}.skills__techHead{display:block;margin-bottom:1.75rem}.skills__grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(4,minmax(0,1fr))}.skills__group{border-top:1px solid var(--rule);padding-top:1.25rem}.skills__groupName{font-family:var(--display);font-size:1.15rem;font-weight:700;letter-spacing:-.035em;line-height:1.1;text-transform:lowercase}.skills__items{list-style:none;margin:1rem 0 0;padding:0}.skills__items li{color:var(--ink-60);font-size:.9rem;padding:.55rem 0;position:relative;transition:color .25s var(--ease),padding-left .3s var(--ease)}.skills__items li:before{background:var(--accent);content:"";height:2px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:width .3s var(--ease);width:0}.skills__items li:hover{color:var(--ink);padding-left:1.1rem}.skills__items li:hover:before{width:12px}@media (max-width:1000px){.skills__grid{gap:2rem;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.skills__capability{gap:.7rem;grid-template-columns:1fr}.skills__lede{margin-bottom:2rem}.skills__tech{margin-top:2.75rem}}@media (max-width:560px){.skills__grid{gap:1.75rem;grid-template-columns:1fr}}.projectsPage{padding-top:2.5rem}.projectsPage__back{margin-bottom:2rem}.projectsPage__backLink{align-items:center;color:var(--ink-60);display:inline-flex;font-size:.8rem;font-weight:600;gap:.45rem;letter-spacing:.02em;transition:color .25s var(--ease),gap .25s var(--ease)}.projectsPage__backLink:hover{color:var(--ink);gap:.75rem}@media (max-width:900px){.projectsPage{padding-top:1.75rem}.projectsPage__back{margin-bottom:1.5rem}}.fullScreenButton{bottom:4.75rem;position:fixed;right:1.5rem;z-index:150}.fullScreenButton button{background:var(--paper);border:1px solid var(--rule);color:var(--ink-35);cursor:pointer;display:grid;font-size:1.35rem;height:44px;padding:0;place-items:center;transition:color .25s var(--ease),border-color .25s var(--ease);width:44px}.fullScreenButton button:hover{border-color:var(--ink);color:var(--ink)}.mobile-fullscreen{-ms-overflow-style:none;height:100vh!important;left:0!important;overflow:hidden!important;position:fixed!important;scrollbar-width:none;top:0!important;width:100vw!important;z-index:9999!important}.mobile-fullscreen::-webkit-scrollbar{display:none}@media (max-width:560px){.fullScreenButton{bottom:4rem;right:1rem}.fullScreenButton button{height:40px;width:40px}}@supports (-webkit-touch-callout:none){.mobile-fullscreen{height:-webkit-fill-available!important}}.app{background-color:var(--paper);min-height:100vh}
/*# sourceMappingURL=main.d79996c7.css.map*/