:root{--fg:#2a2a2a;--muted:#666;--bg:#ebe6dc;--border:#d8d3c8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*,:before,:after{box-sizing:border-box}body{color:var(--fg);background:var(--bg);margin:0}#root{width:100%;min-height:100svh}.desktop-hero{justify-content:center;min-height:100svh;padding:0;display:flex}.desktop-scene{background:#ebe6dc;width:min(1100px,100%);min-height:100svh;margin:0 auto;position:relative;overflow:hidden}.light-effects{z-index:3;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;mix-blend-mode:screen;opacity:.85;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}.desktop-item{z-index:4;color:#2a2a2a;flex-direction:column;align-items:center;gap:.4rem;width:max-content;max-width:11rem;text-decoration:none;transition:transform .15s;display:flex;position:absolute}.desktop-item img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:clamp(72px,11vw,104px);height:auto;display:block}.desktop-item--md img{width:clamp(80px,12vw,112px)}.desktop-item--lg img{width:clamp(88px,13vw,120px)}.desktop-item span{text-align:center;word-break:break-word;font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:clamp(.65rem,1.6vw,.75rem);line-height:1.3;transition:background .15s,color .15s,padding .15s}.desktop-item:hover{transform:scale(1.02)}.desktop-item:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #555}.hero-photo{z-index:1;object-fit:contain;object-position:bottom center;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 18px 28px #2a2a2a2e)drop-shadow(0 6px 12px #2a2a2a1a);width:min(520px,72vw);max-height:78vh;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hero-floor-lights{z-index:0;pointer-events:none;isolation:isolate;width:min(520px,72vw);height:clamp(3.5rem,12vw,5.5rem);position:absolute;bottom:0;left:50%;transform:translate(-50%)}.small-floor-light{object-fit:contain;object-position:bottom center;-webkit-user-select:none;user-select:none;mix-blend-mode:lighten;opacity:.7;transform-origin:bottom;backface-visibility:hidden;width:clamp(64px,11vw,96px);height:auto;position:absolute}.floor-light-effects{z-index:2;object-fit:cover;object-position:bottom center;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:bottom;mix-blend-mode:screen;opacity:.85;width:100%;height:100%;position:absolute;inset:0;transform:translate(31.5%,18rem)scaleX(-1)scale(.5)}@media (width<=640px){.desktop-item{max-width:7.5rem}.desktop-item img{width:clamp(56px,16vw,72px)}.desktop-item--md img,.desktop-item--lg img{width:clamp(60px,17vw,76px)}.hero-photo{width:min(380px,88vw);max-height:70vh}.hero-floor-lights{width:min(380px,88vw);height:clamp(2.5rem,10vw,4rem)}.small-floor-light{width:clamp(50px,14vw,72px)}}.creation-entry{margin:0}.creation-kind{letter-spacing:.04em;text-transform:lowercase;color:var(--muted);margin:0 0 .35rem;font-size:.75rem}.creation-title{color:var(--fg);font-size:1rem;font-weight:500;line-height:1.35;text-decoration:none}.creation-title:hover{text-underline-offset:3px;text-decoration:underline}.creation-desc{color:var(--fg);margin:.35rem 0 0;font-size:.875rem;line-height:1.55}.creation-desc p{margin:0 0 .25rem}.creation-desc p:last-child{margin-bottom:0}.content-page{--content-width:min(40rem, 100%);width:var(--content-width);margin:0 auto;padding:3rem .5rem 4rem}.content-back{color:var(--muted);margin-bottom:2.5rem;font-size:.875rem;text-decoration:none;display:inline-block}.content-back:hover{color:var(--fg);text-underline-offset:3px;text-decoration:underline}.content-page h1{letter-spacing:-.02em;text-transform:lowercase;color:var(--fg);margin:0 0 1.5rem;font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:1.5rem;font-weight:500}.content-page p{color:var(--fg);margin:0 0 1rem;line-height:1.65}.content-page p:last-child{margin-bottom:0}.creation-list{margin:1rem 0 0;padding:0;list-style:none}.creation-list li{margin:0 0 2rem}.creation-list li:last-child{margin-bottom:0}.about-links{flex-wrap:wrap;gap:1rem 1.25rem;margin-top:1.5rem;display:flex}.about-links a{color:var(--fg);font-size:.875rem;text-decoration:none}.about-links a:hover{color:var(--muted);text-underline-offset:3px;text-decoration:underline}.content-subheading{text-transform:lowercase;color:var(--muted);margin:2.5rem 0 1.25rem;font-size:.875rem;font-weight:500}.curation-books{grid-template-columns:repeat(4,minmax(0,4.75rem));gap:1.25rem .75rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=520px){.curation-books{grid-template-columns:repeat(2,minmax(0,4.75rem))}}.curation-books li,.curation-books figure{margin:0}.curation-books img{aspect-ratio:2/3;object-fit:cover;border-radius:2px;width:100%;display:block}.curation-books figcaption{text-transform:lowercase;color:var(--fg);margin-top:.5rem;font-size:.8125rem;line-height:1.35}.content-page--experiences{overflow:visible}.experience-body{position:relative}.experience-gallery{pointer-events:none;flex-direction:column;gap:1.25rem;width:10.5rem;display:flex;position:absolute;top:0;right:calc(100% + 1.25rem)}.experience-gallery-image{object-fit:cover;border-radius:2px;width:100%;height:auto;transition:opacity .2s;display:block}.experience-gallery-image.is-dimmed{opacity:.35}.experience-main{position:relative}.experience-list{margin:0;padding:0;list-style:none}.experience-entry{margin:0 0 2rem}.experience-entry:last-child{margin-bottom:0}.experience-copy{flex-direction:column;gap:.35rem;font-size:.875rem;line-height:1.55;display:flex}.experience-copy p{margin:0}.experience-copy a{color:inherit;text-underline-offset:3px;text-decoration:underline}.experience-copy a:hover{color:var(--muted)}.experience-title{color:var(--fg);font-weight:500}.experience-period,.experience-location{color:var(--muted)}.experience-work{color:var(--fg)}@media (width<=640px){.experience-gallery{flex-flow:wrap;gap:.75rem;width:100%;margin-bottom:1.5rem;position:static}.experience-gallery-image{width:calc(50% - .375rem);max-width:14rem}}.app{flex-direction:column;min-height:100svh;display:flex}.app>:first-child{flex:1}
