/* Local hero study: the opening L, then the portfolio cards as moving cloth. */
.lc-hero{position:relative;isolation:isolate;height:100svh;min-height:620px;margin-top:-91px;overflow:hidden;background:#050607;color:#f6f7f8;--hero-pad:clamp(24px,3.7vw,64px)}
.lc-hero canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y}
.lc-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#03040535,transparent 25%,transparent 65%,#03040580)}
.lc-hero-content{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:1;transition:opacity 1s}
.lc-hero.is-entering .lc-hero-content{opacity:0}.lc-hero.is-revealed .lc-hero-content{opacity:1}
.lc-hero-caption{position:absolute;top:131px;left:var(--hero-pad);margin:0;font-size:12px;line-height:1.8;letter-spacing:1.4px;color:#c7cace}
.lc-hero-caption span{display:block;font-size:11px;letter-spacing:2.2px;color:#899096;margin-top:4px}
.lc-hero-cross{position:absolute;top:50%;font:300 19px/1 Arial;color:#aeb4ba70}
.lc-hero-cross:nth-of-type(1){left:var(--hero-pad)}.lc-hero-cross:nth-of-type(2){left:50%}.lc-hero-cross:nth-of-type(3){right:var(--hero-pad)}
.lc-hero-name{position:absolute;bottom:72px;left:calc(var(--hero-pad) - .07em);right:var(--hero-pad);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:clamp(60px,14.4vw,280px);font-weight:400;line-height:.78;letter-spacing:-.065em;white-space:nowrap;display:flex;justify-content:space-between;transform:translateY(120%) rotateX(32deg);transform-origin:50% 100%;transition:transform 1.25s cubic-bezier(.16,1,.3,1);will-change:transform}
.lc-hero.is-revealed .lc-hero-name{transform:translateY(0) rotateX(0)}
.lc-hero-bottom{position:absolute;bottom:25px;left:var(--hero-pad);right:var(--hero-pad);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;letter-spacing:1px;color:#aab0b6}
.lc-hero-bottom>a{pointer-events:auto;color:#f4f5f6;font-size:13px;display:flex;gap:14px;align-items:center;padding:9px 0}
.lc-scroll-mark{width:18px;height:26px;border:1px solid #8c929a;border-radius:12px;display:inline-block;position:relative}.lc-scroll-mark::after{content:"";position:absolute;width:2px;height:5px;left:7px;top:5px;background:#eee;border-radius:1px;animation:lc-scroll 2.2s infinite}
@keyframes lc-scroll{0%,100%{transform:translateY(0);opacity:.4}45%{transform:translateY(7px);opacity:1}}
.lc-hero-tools{position:absolute;z-index:4;right:var(--hero-pad);top:129px;display:flex;gap:8px;align-items:center}
.lc-hero-tools button{border:1px solid #ffffff24;background:#ffffff08;color:#bfc5cb;padding:8px 12px;border-radius:20px;font-size:11px;letter-spacing:.5px;transition:background .2s,color .2s}
.lc-hero-tools button:hover{background:#ffffff18;color:white}.lc-hero-tools button:focus-visible{outline:2px solid white}
.lc-hero-hint{position:absolute;top:var(--cloth-hint-top,65%);left:var(--hero-pad);z-index:3;margin:0;font-size:11px;letter-spacing:1px;color:#aab2bc;pointer-events:none}
.lc-intro-overlay{position:absolute;inset:0;z-index:10;background:#050607;display:grid;place-items:center;overflow:hidden;pointer-events:auto}
.lc-intro-mark{--mark-size:clamp(150px,22.6757svh,280px);position:absolute;left:50%;top:50%;width:var(--mark-size);height:var(--mark-size);margin:calc(var(--mark-size) / -2) 0 0 calc(var(--mark-size) / -2);transform-origin:50% 50%;will-change:transform,opacity}
.lc-intro-mark i{position:absolute;display:block;background:#f6f6f6;will-change:transform}
.lc-intro-mark .lc-mark-stem{left:20%;top:10%;width:20%;height:60%;transform-origin:50% 83.333333%;transform:rotate(90deg)}
.lc-intro-mark .lc-mark-foot{left:40%;top:70%;width:40%;height:20%;transform:translateY(-100%)}
.lc-intro-meter{position:absolute;left:var(--hero-pad);bottom:26px;font:300 54px/1 Arial;letter-spacing:-3px;overflow:hidden}
.lc-intro-caption{position:absolute;right:var(--hero-pad);bottom:36px;font:11px/1.5 Arial;letter-spacing:2px;color:#82878b}
.lc-intro-skip{position:absolute;right:var(--hero-pad);top:35px;background:none;color:#9da4aa;font-size:12px;padding:10px 0;min-height:44px;pointer-events:auto}
.lc-intro-skip:focus-visible{outline:2px solid white;outline-offset:4px}
.lc-hero.is-entering .lc-hero-hint{opacity:0}
:root.lc-hero-visible .site-header{border-bottom-color:transparent;background:transparent;backdrop-filter:none;color:#f7f8f9;transition:opacity .35s,background .35s}
:root.lc-hero-visible .site-header .brand-name em{color:#a0a6ad}
:root.lc-hero-visible .site-header nav .active:after{background:#f3f3f3;height:1px}
:root.lc-intro-playing .site-header{opacity:0;pointer-events:none}
.lc-hero+.intro{padding-top:110px;padding-bottom:70px}
.lc-hero [hidden]{display:none!important}
@media(max-width:760px){.lc-hero{margin-top:-70px;min-height:560px}.lc-hero-caption{top:105px;font-size:11px}.lc-hero-caption span{font-size:10px}.lc-hero-tools{top:104px;gap:5px}.lc-hero-tools button{font-size:10px;padding:7px 10px}.lc-hero-name{font-size:14.1vw;bottom:89px}.lc-hero-bottom{bottom:25px;gap:10px;font-size:10px}.lc-hero-bottom>a{font-size:11px}.lc-hero-hint{bottom:calc(110px + 16vw);font-size:10px}.lc-hero+.intro{padding-top:62px;padding-bottom:40px}.lc-intro-caption{font-size:9px}.lc-intro-meter{font-size:44px}}
@media(max-height:640px) and (min-width:761px){.lc-hero{min-height:540px}.lc-hero-caption,.lc-hero-tools{top:105px}.lc-hero-name{font-size:12vw}.lc-hero-hint{bottom:calc(72px + 14vw)}}
@media(prefers-reduced-motion:reduce){.lc-intro-overlay{display:none}.lc-hero-content{opacity:1}.lc-hero-name{transform:none;transition:none}.lc-scroll-mark::after{animation:none}.lc-hero-hint{display:none}}

.lc-hero:not(.is-entering) .lc-hero-name{transform:none}
.lc-cloth-cards{position:absolute;inset:175px 0 210px;z-index:3;pointer-events:auto;opacity:1;transition:opacity .7s;touch-action:pan-x;cursor:grab;overflow:hidden}
.lc-cloth-cards:focus-visible{outline:1px solid #789aff;outline-offset:-8px}
.lc-hero.is-entering .lc-cloth-cards,.lc-hero.is-entering .lc-cloth-controls{opacity:0}
.lc-cloth-card{position:absolute;left:0;top:-175px;pointer-events:auto;touch-action:pan-x;user-select:none;padding:0;background:none;border:0;outline-offset:9px;cursor:grab;transform-origin:center;will-change:transform}
.lc-cloth-card:focus-visible{outline:2px solid #8bafff}.lc-is-dragging,.lc-is-dragging .lc-cloth-card{cursor:grabbing}
.lc-cloth-fallback{pointer-events:none;display:flex;flex-direction:column;width:100%;height:100%;padding:10px;background:#fafbfd;border:1px solid #d0d9e5;border-radius:12px;text-align:left;box-shadow:0 20px 50px #0003}
.lc-cloth-fallback>.artwork{position:relative;flex:1;width:100%;min-height:0;border-radius:8px;overflow:hidden}.lc-cloth-fallback>strong{font-size:16px;color:#253249;padding:15px 5px 8px;font-weight:500}
.has-cloth>.lc-cloth-fallback{visibility:hidden}
.lc-cloth-controls{position:absolute;top:var(--cloth-controls-top,66%);right:var(--hero-pad);z-index:4;display:flex;align-items:center;gap:18px;transition:opacity .7s}
.lc-cloth-controls button{border:1px solid #ffffff35;border-radius:50%;width:35px;height:35px;background:#ffffff08;color:#eee;font:18px Arial;transition:background .2s}.lc-cloth-controls button:hover{background:#ffffff24}.lc-cloth-controls button:focus-visible{outline:2px solid #8bafff;outline-offset:3px}.lc-cloth-controls button:disabled{opacity:.35;cursor:default}
.lc-cloth-controls>span{font:11px Arial;letter-spacing:2px;color:#aeb8c5;min-width:50px;text-align:center}
.lc-cloth-title{position:absolute;z-index:3;left:50%;top:45%;width:min(88vw,930px);transform:translate(-50%,-50%);pointer-events:none;mix-blend-mode:difference;color:white;font-size:clamp(38px,6.6vw,104px);font-weight:550;line-height:1.24;letter-spacing:-.055em}
.lc-cloth-title>div{overflow:hidden}.lc-cloth-title>div+div{text-align:right}
.lc-cloth-title span{display:block;transform:translateY(0);transition:transform .8s cubic-bezier(.16,1,.3,1)}
.lc-cloth-title>div+div span{transition-delay:.08s}
.is-cloth-sliding .lc-cloth-title span,.is-entering .lc-cloth-title span{transform:translateY(115%);transition-duration:.3s;transition-timing-function:cubic-bezier(.7,0,1,.4)}
.lc-cloth-card:focus-visible{background:#6995ff22}
@media(max-width:760px){.lc-hero-hint{left:50%;transform:translateX(-50%);white-space:nowrap;bottom:auto;top:calc(var(--cloth-controls-top,64%) + 53px);font-size:10px}.lc-cloth-controls{left:50%;right:auto;transform:translateX(-50%)}.lc-cloth-fallback>strong{font-size:13px}.lc-hero-name{bottom:72px}}
@media(max-width:760px){.lc-cloth-cards{bottom:185px}.lc-cloth-title{width:88vw;font-size:clamp(32px,10.5vw,55px);top:45%}}
@media(prefers-reduced-motion:reduce){.lc-cloth-cards,.lc-cloth-controls{transition:none}}
@media(prefers-reduced-motion:reduce){.lc-cloth-title span{transition:none}}

/* The animated portfolio is now the entire home page. */
html,body{background:#050607}#cardMount[hidden]{display:none!important}.lc-hero{outline:none}.lc-hero-bottom>a{font-size:11px;color:#aab0b6}.lc-hero-bottom>a:hover{color:#fff}
