@font-face{font-family:Cormorant Fallback;src:local(Times New Roman),local(Times),local(Georgia);size-adjust:93%;ascent-override:99.4%;descent-override:30.9%;line-gap-override:0%}@font-face{font-family:Hanken Fallback;src:local(Arial),local(Helvetica Neue),local(Helvetica);size-adjust:101%;ascent-override:95%;descent-override:25%;line-gap-override:0%}:root{--bg:#140a0c;--ink:#efe3d2;--accent:#e8b04b;--ink-dim:color-mix(in srgb, var(--ink) 68%, var(--bg));--rule:color-mix(in srgb, var(--ink) 18%, var(--bg));--bg-lift:color-mix(in srgb, var(--ink) 5%, var(--bg));--bg-deep:color-mix(in srgb, #000 45%, var(--bg));--accent-glow:color-mix(in srgb, var(--accent) 24%, transparent);--font-display:"Cormorant Garamond", "Cormorant Fallback", "Times New Roman", serif;--font-body:"Hanken Grotesk", "Hanken Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter:clamp(1rem, 4vw, 3.5rem);--col-gap:clamp(.75rem, 2vw, 2rem);--header-h:4.5rem;--section-pad:clamp(5.5rem, 12vw, 12rem);--ease:cubic-bezier(.2, .7, .1, 1);--t-hero:clamp(4rem, min(24vw, 23svh), 24rem);--t-d1:clamp(2.75rem, 8.4vw, 9rem);--t-d2:clamp(2rem, 4.4vw, 4.5rem)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:auto;background:var(--bg);overflow-x:clip}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;font-weight:400;line-height:1.6;overflow-x:clip}h1,h2,h3,p,dl,dd,figure,ol,ul{margin:0;padding:0}ol,ul{list-style:none}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[tabindex="-1"]:focus{outline:none}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body:after{content:"";z-index:90;pointer-events:none;opacity:.075;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:.9s steps(5,end) infinite grain;position:fixed;top:-120px;bottom:-120px;left:-120px;right:-120px}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-40px,24px)}40%{transform:translate(30px,-36px)}60%{transform:translate(-22px,-18px)}80%{transform:translate(38px,30px)}to{transform:translate(0)}}@media (hover:none){body:after{animation:none}}h1,h2,h3{text-wrap:balance}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{left:var(--gutter);z-index:120;background:var(--accent);color:var(--bg);padding:.6rem 1rem;font-weight:500;position:fixed;top:.75rem;transform:translateY(-200%)}.skip:focus{transform:none}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:.75rem;font-weight:500;line-height:1.3;display:block}.sec-head{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);align-items:center;gap:1rem;font-size:.75rem;font-weight:500;line-height:1;display:flex}.sec-head__idx{color:var(--accent);font-variant-numeric:tabular-nums}.sec-head__rule{background:var(--rule);transform-origin:0;flex:1;height:1px}.w{white-space:nowrap;vertical-align:top;margin:-.14em -.09em;padding:.14em .09em;display:inline-block;overflow:hidden}.line--accent .w{margin-inline-start:-.2em;margin-inline-end:-.2em;padding-inline-start:.2em;padding-inline-end:.2em}.char,.word{display:inline-block}.site-header{z-index:50;height:var(--header-h);padding-inline:var(--gutter);transition:transform .7s var(--ease), background-color .5s ease;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;bottom:auto;left:0;right:0}.site-header.is-scrolled{background:color-mix(in srgb, var(--bg) 80%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-header.is-hidden{transform:translateY(-100%)}.brand{font-family:var(--font-display);letter-spacing:.04em;font-size:1.5rem;font-weight:600;line-height:1}.brand i{color:var(--accent);font-style:italic}.nav ul{gap:clamp(1.25rem,3vw,2.75rem);display:flex}.nav a{letter-spacing:.14em;text-transform:uppercase;padding-block-start:.5rem;padding-block-end:.5rem;font-size:.8125rem;font-weight:500;display:inline-block;position:relative}.nav a:after{content:"";background:var(--accent);transform-origin:100%;height:1px;transition:transform .6s var(--ease);position:absolute;bottom:.2rem;left:0;right:0;transform:scaleX(0)}@media (hover:hover){.nav a:hover:after{transform-origin:0;transform:scaleX(1)}}.hero{min-height:100svh;padding:calc(var(--header-h) + .5rem) var(--gutter) clamp(1rem, 3svh, 2rem);flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:clip}.hero__meta{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);justify-content:space-between;gap:1rem;margin-bottom:auto;padding-top:1rem;font-size:.75rem;font-weight:500;line-height:1.5;display:flex}.hero__clock{white-space:nowrap;font-variant-numeric:tabular-nums;visibility:hidden}.hero__clock.is-ready{visibility:visible}.hero__clock time{color:var(--ink)}.hero__name{font-family:var(--font-display);font-weight:500;font-size:var(--t-hero);letter-spacing:-.02em;margin:0 0 clamp(1.25rem,4svh,3rem) -.04em;padding-bottom:.14em;line-height:.9}.hero__name .line{display:block}.hero__name .line:nth-child(2){padding-left:clamp(0px,100% - 2.3em,3.2em)}.hero__name .line:nth-child(3){padding-left:clamp(0px,100% - 3em,1em)}.line--accent{color:var(--accent);font-style:italic}.hero__rule{background:var(--rule);transform-origin:0;height:1px}.hero__foot{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;padding-top:clamp(1rem,2.5svh,1.75rem);display:grid}.hero__project{grid-column:1/10;justify-items:start;gap:.35rem;width:-moz-fit-content;width:fit-content;max-width:100%;display:grid}.hero__project-name{font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(1.75rem,3.6vw,3.5rem);font-style:italic;font-weight:500;line-height:1.05;transition:color .5s}.hero__project-tag{color:var(--ink-dim);font-size:.9375rem}@media (hover:hover){.hero__project:hover .hero__project-name{color:var(--accent)}}.hero__scroll{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);grid-column:10/13;justify-self:end;align-items:center;gap:.9rem;font-size:.75rem;font-weight:500;display:flex}.hero__scroll-line{background:var(--rule);width:3.5rem;height:1px;position:relative;overflow:hidden}.hero__scroll-line:after{content:"";background:var(--accent);animation:cue 2.4s var(--ease) infinite;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}@keyframes cue{0%{transform:translate(-100%)}55%,to{transform:translate(100%)}}.featured{padding:var(--section-pad) var(--gutter) calc(var(--section-pad) * .6)}.featured__stage{gap:clamp(1.25rem,3vw,2.5rem);display:grid}.featured__title{font-family:var(--font-display);font-weight:500;font-size:max(2.75rem, min(var(--t-d1), 15svh));letter-spacing:-.015em;overflow-wrap:anywhere;min-height:1lh;padding-bottom:.1em;line-height:1}.featured__body{gap:clamp(1.5rem,3vw,2.5rem);min-height:0;display:grid}.plate{aspect-ratio:4/4.4;border:1px solid var(--rule);background:var(--bg-lift);min-height:0;position:relative;overflow:hidden}.plate__inner{background:radial-gradient(70% 60% at 22% 18%, var(--accent-glow), transparent 70%), radial-gradient(60% 55% at 92% 100%, color-mix(in srgb, var(--ink) 11%, transparent), transparent 70%), linear-gradient(160deg, var(--bg-lift), var(--bg-deep));place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.plate__mark{font-family:var(--font-display);color:color-mix(in srgb, var(--accent) 16%, transparent);-webkit-user-select:none;user-select:none;font-size:clamp(9rem,38vw,26rem);font-style:italic;font-weight:500;line-height:.8}.plate__cap{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);justify-content:space-between;gap:1rem;padding:1rem 1.1rem;font-size:.75rem;font-weight:500;display:flex;position:absolute;top:auto;bottom:0;left:0;right:0}.plate__cap span:first-child{color:var(--accent);white-space:nowrap}.plate__cap span:last-child{text-align:right}.featured__text{align-content:end;gap:clamp(1.5rem,3vw,2.25rem);display:grid}.featured__desc{text-wrap:pretty;max-width:40ch;font-size:clamp(1.0625rem,1.35vw,1.3125rem);line-height:1.55}.claude{border-top:1px solid var(--rule);max-width:40ch;padding-top:1.1rem}.claude dt{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem;font-size:.75rem;font-weight:500}.claude dd{color:var(--ink-dim);font-size:1rem}@media (min-width:900px){.featured__body{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch}.plate{aspect-ratio:16/10;grid-area:1/5/auto/13}.featured__text{grid-area:1/1/auto/5}}@media (min-width:900px) and (min-height:620px){.featured{padding-block-start:0;padding-block-end:0}.featured__stage{height:auto;min-height:100svh;padding-top:calc(var(--header-h) + .5rem);grid-template-rows:auto auto auto;gap:clamp(.75rem,2.2svh,1.75rem);padding-bottom:clamp(1rem,3svh,2rem)}.featured--pin .featured__stage{grid-template-rows:auto auto minmax(0,1fr);height:100svh;min-height:0}.featured--pin .plate{aspect-ratio:auto}}.work{padding:var(--section-pad) var(--gutter) calc(var(--section-pad) * .7)}.work__list{margin-top:clamp(2rem,5vw,4.5rem)}.work__row{isolation:isolate;column-gap:var(--col-gap);border-top:1px solid var(--rule);grid-template-columns:2.25rem minmax(0,1fr);align-items:baseline;row-gap:.5rem;display:grid;position:relative}.work__row,.work__link{padding-block-start:clamp(1.25rem,3vw,2.5rem);padding-block-end:clamp(1.25rem,3vw,2.5rem)}.work__row--link{padding-block-start:0;padding-block-end:0}.work__link{grid-column:1/-1;grid-template-columns:inherit;column-gap:inherit;row-gap:inherit;align-items:inherit;display:grid}.work__row:last-child{border-bottom:1px solid var(--rule)}.work__row:before{content:"";z-index:-1;background:var(--accent);transform-origin:bottom;transition:transform .6s var(--ease);position:absolute;top:-1px;bottom:-1px;left:-.75rem;right:-.75rem;transform:scaleY(0)}.work__n{font-family:var(--font-display);color:var(--accent);font-size:1.375rem;font-style:italic;transition:color .4s}.work__name{font-family:var(--font-display);letter-spacing:-.01em;transition:transform .7s var(--ease), color .4s ease;overflow-wrap:anywhere;font-size:clamp(2.25rem,5.4vw,6rem);font-weight:500;line-height:1}.work__line{color:var(--ink-dim);grid-column:2;max-width:36ch;transition:color .4s}@media (min-width:900px){.work__row{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center}.work__n{grid-column:1/2}.work__name{grid-column:2/10}.work__line{grid-column:10/13}}@media (hover:hover){.work__row:not(.work__row--link):hover .work__name{color:var(--accent)}.work__row--link:hover:before{transform:scaleY(1)}.work__row--link:hover .work__name{color:var(--bg);transform:translate(1.25rem)}.work__row--link:hover .work__n,.work__row--link:hover .work__line{color:var(--bg)}}.work__row--link:focus-within:before{transform:scaleY(1)}.work__row--link:focus-within .work__name,.work__row--link:focus-within .work__n,.work__row--link:focus-within .work__line{color:var(--bg)}.work__link:focus-visible{outline-offset:0}.work__row--link:focus-within .work__link:focus-visible{outline-color:var(--bg)}.about{padding:calc(var(--section-pad) * .7) var(--gutter) var(--section-pad)}.about__text{max-width:22ch;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:var(--t-d2);text-wrap:balance;letter-spacing:-.015em;margin-top:clamp(2.5rem,7vw,6rem);line-height:1.08}.about__detail{max-width:58ch;color:var(--ink-dim);text-wrap:pretty;margin-top:clamp(1.75rem,4vw,3rem);font-size:clamp(1rem,.95rem + .3vw,1.1875rem);line-height:1.6}.about__role{border-top:1px solid var(--rule);color:var(--ink-dim);margin-top:clamp(2.5rem,6vw,5rem);padding-top:1.1rem;font-size:.9375rem}.contact{padding:calc(var(--section-pad) * .6) var(--gutter) 0;position:relative;overflow:clip}.contact__prompt{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;color:color-mix(in srgb, var(--accent) 75%, var(--bg));margin-top:clamp(1.5rem,4vw,3.5rem);padding-left:.05em;font-size:clamp(2.5rem,5vw,5.5rem);font-style:italic;font-weight:500;line-height:.95}@media (min-width:900px){.contact__prompt{color:#0000;-webkit-text-stroke:1.25px color-mix(in srgb, var(--accent) 85%, transparent)}}@supports not (-webkit-text-stroke:1px red){.contact__prompt{color:color-mix(in srgb, var(--accent) 75%, var(--bg))}}.contact__drift{display:inline-block}.contact__label{margin-top:clamp(1.5rem,4vw,3rem)}.contact__mask{margin:0 -.25rem;padding:.5rem .25rem;overflow:hidden}.contact__mail{font-family:var(--font-display);letter-spacing:-.015em;overflow-wrap:anywhere;font-size:clamp(1.25rem,6.6vw,12rem);font-weight:500;line-height:1.05;transition:color .5s;display:inline-block;position:relative}.contact__mail:after{content:"";background:var(--accent);transform-origin:100%;height:1px;transition:transform .7s var(--ease);position:absolute;bottom:.02em;left:0;right:0;transform:scaleX(0)}@media (min-width:900px){.contact__mail{font-size:clamp(2rem,6.9vw,12rem)}}@media (hover:hover){.contact__mail:hover{color:var(--accent)}.contact__mail:hover:after{transform-origin:0;transform:scaleX(1)}}.footer{margin:clamp(4rem, 10vw, 9rem) var(--gutter) 0;border-top:1px solid var(--rule);color:var(--ink-dim);gap:.5rem 2rem;padding:1.25rem 0 1.5rem;font-size:.875rem;display:grid}.footer a{color:var(--ink);border-bottom:1px solid var(--rule);transition:border-color .4s,color .4s}@media (hover:hover){.footer a:hover{color:var(--accent);border-color:var(--accent)}}@media (min-width:700px){.footer{grid-template-columns:1fr auto}.footer p:last-child{text-align:right}}@media (max-width:699px){:root{--header-h:4rem}.hero__meta{flex-direction:column;gap:.25rem}.hero__clock{display:none}.hero__name{font-size:clamp(4rem,min(27vw,23svh),24rem)}.hero__project{grid-column:1/-1}.hero__scroll{display:none}.plate__cap{flex-direction:column;gap:.35rem}.plate__cap span:last-child{text-align:left}}.cursor{z-index:100;pointer-events:none;opacity:0;width:0;height:0;transition:opacity .4s;position:fixed;top:0;left:0}.cursor.is-visible{opacity:1}.cursor__dot{background:var(--accent);width:10px;height:10px;transition:width .5s var(--ease), height .5s var(--ease), margin .5s var(--ease), background-color .4s ease, border-color .4s ease;border-radius:50%;margin:-5px 0 0 -5px;display:block}.cursor.is-active .cursor__dot{border:1px solid var(--accent);background:0 0;width:56px;height:56px;margin:-28px 0 0 -28px}.cursor.is-active.is-on-fill .cursor__dot{border-color:var(--bg)}@media (hover:hover) and (pointer:fine){html.has-cursor,html.has-cursor a{cursor:none}}.js [data-intro],.js [data-fade],.js .work__row,.js [data-mail]{opacity:0}.js [data-split-chars],.js [data-split-words]{visibility:hidden}.js .hero__name{visibility:hidden;animation:0s 2.5s forwards reveal}@keyframes reveal{to{visibility:visible}}.js .plate{clip-path:inset(100% 0 0)}.js [data-rule] .sec-head__rule,.js [data-hero-rule]{transform:scaleX(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}.site-header.is-hidden:focus-within{transform:none}.js [data-intro]:focus-within,.js .work__row:focus-within,.js [data-mail]:focus-within{opacity:1!important;visibility:visible!important;transform:none!important}
