@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600;700&display=swap";:root{color-scheme:dark;--bg: #050505;--grid-line: rgb(255 255 255 / .14);--grid-size: 64px;--ink: #fff;--muted: rgb(255 255 255 / .68);--hairline: rgb(255 255 255 / .44);--faint: rgb(255 255 255 / .13);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.global-svg-defs{position:absolute;width:0;height:0;overflow:hidden}.grid-page{position:relative;min-height:100vh;background:var(--bg)}.grid-page:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-position:0 0;background-size:var(--grid-size) var(--grid-size)}.hero{position:relative;z-index:1;min-height:100vh;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(80px,.34fr) auto minmax(220px,1fr);padding:clamp(48px,8vh,96px) clamp(20px,6vw,80px) clamp(32px,7vh,80px);outline:none}.intro{position:relative;grid-column:2;grid-row:1;align-self:end;justify-self:start;transform:translate(-132px,20px);min-width:28ch;min-height:1.3em;color:#ffffffb8;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.2rem;line-height:1.2}.intro__text{position:absolute;inset:0 auto auto 0;white-space:nowrap;transition:opacity .54s linear,transform .68s cubic-bezier(.16,1,.3,1),filter .68s cubic-bezier(.16,1,.3,1)}.intro__text--primary{opacity:1;transform:translateY(0);filter:blur(0)}.intro__text--secondary{opacity:0;transform:translateY(.65em);filter:blur(3px)}.hero.is-hovered .intro__text--primary{opacity:0;transform:translateY(-.45em);filter:blur(3px)}.hero.is-hovered .intro__text--secondary{opacity:1;transform:translateY(0);filter:blur(0)}.name{position:relative;grid-column:1 / -1;grid-row:2;place-self:center;text-align:center;width:min(820px,86vw)}.name-hitbox{position:absolute;z-index:2;left:50%;top:51%;width:min(610px,74%);height:min(142px,58%);transform:translate(-50%,-50%)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gooey-name{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 28px 30px rgb(0 0 0 / .68));pointer-events:none}.name-guides path{fill:none;stroke:none;opacity:0;pointer-events:none}.name-blobs circle{fill:#fff}.about-card{position:relative;grid-column:1 / -1;grid-row:3;align-self:start;justify-self:center;width:min(1040px,100%);margin-top:clamp(18px,3.6vh,42px);display:grid;border:1px solid var(--hairline);background:#00000075;color:var(--ink);box-shadow:0 0 0 1px #000000c7,0 24px 60px #00000094}.about-card:before,.about-card:after{content:"";position:absolute;width:26px;height:26px;pointer-events:none}.about-card:before{top:5px;left:5px;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.about-card:after{right:5px;bottom:5px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.about-card__header{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;align-items:center;gap:18px;min-width:0;padding:12px 20px 10px;color:var(--ink);font-size:clamp(.64rem,.95vw,.82rem);font-weight:600;line-height:1.15;text-transform:uppercase}.about-card__index{font-size:clamp(1rem,1.4vw,1.34rem);font-weight:700}.about-card__rule{height:18px;opacity:.72;background-color:#000}.about-card__location{color:var(--muted);white-space:nowrap}.about-card__body{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(500px,1fr);min-height:230px;border-top:1px solid var(--faint)}.about-card__identity{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0;padding:clamp(24px,3vw,34px) clamp(22px,3vw,34px) 18px}.about-card__identity p{margin:0;font-size:clamp(.78rem,1vw,1rem);line-height:1.1;text-transform:uppercase}.about-card__name{margin-bottom:6px!important;font-size:clamp(2.35rem,5vw,4.2rem)!important;font-weight:500;line-height:.9!important;letter-spacing:.12em}.about-card__status{display:grid;grid-template-columns:auto auto auto minmax(60px,1fr);align-items:center;gap:12px;margin-top:auto;padding-top:22px;color:var(--muted);font-size:clamp(.62rem,.85vw,.74rem);font-weight:600;line-height:1;text-transform:uppercase}.about-card__status strong{color:var(--ink);font-size:inherit}.about-card__status i{display:block;height:1px;min-width:72px;background:repeating-linear-gradient(90deg,var(--ink) 0 6px,transparent 6px 12px);opacity:.48}.about-card__panel{display:grid;grid-template-columns:minmax(150px,.58fr) minmax(260px,1fr);grid-template-rows:minmax(160px,1fr) auto;border-left:1px solid var(--hairline)}.about-card__badge{position:relative;display:grid;place-items:center;min-height:100%;border-right:1px solid var(--hairline);background:radial-gradient(circle at 50% 50%,rgb(255 255 255 / .09),transparent 54%),#ffffff06;overflow:hidden}.about-card__badge:before,.about-card__badge:after{content:"";position:absolute;inset:18px;border:1px solid rgb(255 255 255 / .24)}.about-card__badge:after{inset:auto 14px 18px;height:1px;border:0;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 8px);opacity:.5}.block-w-mark{position:relative;z-index:1;display:block;width:min(68%,180px);height:auto;color:var(--ink);filter:drop-shadow(9px 0 0 rgb(255 255 255 / .06))}.about-card__details{display:grid;align-content:center;gap:8px;margin:0;padding:clamp(18px,2.2vw,28px)}.about-card__details div{display:grid;grid-template-columns:9ch minmax(0,1fr);gap:16px;align-items:baseline}.about-card__details dt,.about-card__details dd{margin:0;font-size:clamp(.74rem,1vw,.92rem);line-height:1.2;text-transform:uppercase}.about-card__details dt{color:var(--muted);font-weight:700}.about-card__details dd{color:var(--ink);font-weight:500}.about-card__details a{color:currentColor;text-decoration:none}.about-card__contact{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:16px;min-height:46px;padding:12px 20px;border-top:1px solid var(--hairline);font-size:clamp(.66rem,.95vw,.82rem);font-weight:600;line-height:1;text-transform:uppercase}.about-card__contact a{color:var(--ink);text-decoration:none}.about-card__contact a:nth-of-type(2){justify-self:end}.about-card__contact span:first-child{color:var(--muted)}.about-card__contact span:last-child{color:var(--ink);font-size:1.4rem;line-height:.7}.about-card__contact a:hover,.about-card__details a:hover{background:var(--ink);color:var(--bg)}.about-card a{transition:background .16s ease,color .16s ease}.portifolio{position:relative;z-index:1;width:100%;padding:clamp(40px,8vw,96px) clamp(20px,6vw,80px) clamp(90px,12vw,150px)}.work-index{position:relative;width:min(1120px,100%);margin:0 auto;border:1px solid var(--hairline);background:#00000075;box-shadow:0 0 0 1px #000000c7,0 24px 60px #00000094}.work-index:before,.work-index:after{content:"";position:absolute;width:26px;height:26px;pointer-events:none}.work-index:before{top:5px;left:5px;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.work-index:after{right:5px;bottom:5px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.work-index__header{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;align-items:center;gap:18px;min-width:0;padding:12px 20px 10px;border-bottom:1px solid var(--faint);color:var(--ink);font-size:clamp(.64rem,.95vw,.82rem);font-weight:600;line-height:1.15;text-transform:uppercase}.work-index__index{font-size:clamp(1rem,1.4vw,1.34rem);font-weight:700}.work-index__rule{height:18px;opacity:.72;background:linear-gradient(to bottom,transparent 8px,var(--hairline) 8px 9px,transparent 9px)}.work-index__location{color:var(--muted);white-space:nowrap}.work-index__body{display:grid;grid-template-columns:minmax(420px,.98fr) minmax(360px,.82fr);min-height:430px}.work-index__list{display:grid;align-content:start;padding:18px 0}.work-row{display:grid;grid-template-columns:4ch minmax(120px,1fr) minmax(150px,1.12fr) 9ch auto;gap:14px;align-items:center;width:100%;min-height:74px;padding:0 20px;border:0;border-bottom:1px solid var(--faint);border-radius:0;color:var(--muted);background:transparent;font:inherit;text-align:left;text-transform:uppercase;cursor:pointer}.work-row:first-child{border-top:1px solid var(--faint)}.work-row:hover,.work-row:focus-visible,.work-row.is-active{color:var(--ink);background:linear-gradient(90deg,rgb(255 255 255 / .1),transparent 70%),#ffffff06;outline:none}.work-row span,.work-row strong,.work-row i{min-width:0;font-size:clamp(.68rem,.98vw,.84rem);line-height:1.15}.fluid-number{position:relative;display:inline-block;min-width:4ch;color:var(--ink)}.fluid-number--display{position:absolute;z-index:3;left:28px;bottom:18px;min-width:2.6ch;font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:.8;display:inline-grid;filter:url(#fluid-number-filter);isolation:isolate}.fluid-number--display .fluid-number__layer{grid-area:1 / 1;transition:opacity .8s linear,transform .8s cubic-bezier(.45,0,.55,1);will-change:opacity,transform}.fluid-number--display .fluid-number__layer--primary{opacity:1;transform:translateY(0)}.fluid-number--display .fluid-number__layer--secondary{opacity:0;transform:translateY(5px)}.fluid-number--display.is-active .fluid-number__layer--primary{opacity:0;transform:translateY(-5px)}.fluid-number--display.is-active .fluid-number__layer--secondary{opacity:1;transform:translateY(0)}.work-row strong{color:var(--ink);font-size:clamp(.9rem,1.35vw,1.2rem);font-weight:700;letter-spacing:.08em}.work-row i{justify-self:end;color:var(--ink);font-style:normal;font-size:1.3rem}.project-specimen{display:grid;grid-template-rows:minmax(250px,.9fr) minmax(0,1fr) auto;min-width:0;border-left:1px solid var(--hairline)}.project-specimen__visual{position:relative;min-height:250px;overflow:hidden;border-bottom:1px solid var(--hairline);background:radial-gradient(circle at 72% 22%,rgb(255 255 255 / .12),transparent 24%),linear-gradient(135deg,rgb(255 255 255 / .07),transparent 55%)}.project-specimen__visual:before{content:"";position:absolute;inset:18px;border:1px solid rgb(255 255 255 / .22)}.project-specimen__image{position:absolute;z-index:2;inset:0;display:grid;place-items:center;padding:0;border:0;background:#0000009e;color:var(--ink);overflow:hidden;text-decoration:none}.project-specimen__image:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,rgb(255 255 255 / .13) 0 1px,transparent 1px 5px),linear-gradient(135deg,rgb(255 255 255 / .12),transparent 44%);mix-blend-mode:screen;opacity:.32}.project-specimen__image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.24) brightness(.82);opacity:.94}.project-specimen__image span{color:var(--ink);font-size:clamp(2rem,5vw,4.2rem);font-weight:700;line-height:.9;letter-spacing:.04em}.project-specimen__image-label{position:absolute;z-index:3;right:24px;bottom:22px;width:min(68%,320px);color:var(--muted);font-size:.62rem;font-weight:700;line-height:1;text-transform:uppercase}.project-specimen__visual svg{position:absolute;z-index:1;inset:24px 18px auto auto;width:min(78%,330px);height:auto;color:var(--ink);overflow:visible}.project-specimen__visual path{fill:none;stroke:currentColor;stroke-width:2;opacity:.78}.project-specimen__visual path:first-child{stroke-dasharray:5 7;opacity:.42}.project-specimen__visual circle{fill:var(--ink)}.project-specimen__readout{display:grid;gap:14px;padding:22px 24px}.project-specimen__eyebrow{margin:0;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1;text-transform:uppercase}.project-specimen h2{margin:0;color:var(--ink);font-size:clamp(2rem,4vw,3.7rem);font-weight:500;line-height:.9;letter-spacing:.1em;text-transform:uppercase}.project-specimen__readout>p:last-of-type{max-width:46ch;margin:0;color:var(--muted);font-size:clamp(.78rem,1vw,.94rem);line-height:1.5;text-transform:uppercase}.project-specimen dl{display:grid;gap:7px;margin:0;padding-top:2px}.project-specimen dl div{display:grid;grid-template-columns:7ch minmax(0,1fr);gap:14px}.project-specimen dt,.project-specimen dd{margin:0;font-size:clamp(.66rem,.9vw,.78rem);line-height:1.2;text-transform:uppercase}.project-specimen dt{color:var(--muted);font-weight:700}.project-specimen dd{color:var(--ink)}.project-specimen__footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 20px;border-top:1px solid var(--hairline);color:var(--muted);font-size:clamp(.62rem,.86vw,.72rem);font-weight:700;line-height:1.1;text-transform:uppercase}@media(max-width:760px){.hero{grid-template-rows:minmax(64px,.28fr) auto minmax(180px,1fr);padding:48px 20px}.intro{transform:translate(-20px,14px);font-size:1rem}.name{width:min(460px,92vw)}.gooey-name{transform:translate(2vw)}.about-card{grid-column:1 / -1;width:min(620px,100%);margin-top:30px}.about-card__header{grid-template-columns:1fr;gap:8px}.about-card__rule{display:none}.about-card__location{justify-self:start;white-space:normal}.about-card__body,.about-card__panel{grid-template-columns:1fr}.about-card__panel{border-left:0;border-top:1px solid var(--hairline)}.about-card__badge{min-height:180px;border-right:0;border-left:0;border-bottom:1px solid var(--hairline)}.about-card__details div{grid-template-columns:7.5ch minmax(0,1fr)}.about-card__status,.about-card__contact{grid-template-columns:1fr;gap:8px}.about-card__status i{width:100%}.about-card__contact a:nth-of-type(2){justify-self:start}.portifolio{padding:44px 20px 90px}.work-index__header{grid-template-columns:1fr;gap:8px}.work-index__rule{display:none}.work-index__location{white-space:normal}.work-index__body,.project-specimen{grid-template-columns:1fr}.project-specimen{border-left:0;border-top:1px solid var(--hairline)}.work-row{grid-template-columns:4ch minmax(0,1fr) auto;min-height:86px}.work-row>span:nth-of-type(2),.work-row>span:nth-of-type(3){grid-column:2 / -1}.work-row i{grid-column:3;grid-row:1}.project-specimen__footer{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.name-blobs{filter:none}.intro__text,.fluid-number--display .fluid-number__layer{transition-duration:1ms}}
