/* A / Project showcase and correspondence. Shared content comes from ventures.json. */
.about .personal-name{align-self:start}
.about-roles{font:400 14px/1.9 var(--sans);letter-spacing:0;color:#595959;margin:26px 0 0}
.career-proof{display:grid;grid-template-columns:1fr 1fr;column-gap:34px;row-gap:26px;margin:40px 0 58px}
.career-proof>div{border-top:1px solid #d9d9d9;padding-top:22px}
.career-proof strong{font:400 clamp(34px,3.8vw,54px)/1.3 var(--serif);letter-spacing:-.045em;white-space:nowrap}
.career-proof strong>span{font:400 14px var(--sans);letter-spacing:-.02em;margin-left:7px}
.career-proof p{font-size:12px;color:#595959;margin:10px 0 0;line-height:1.8}
.about-chapters{border-top:1px solid #d9d9d9}
.about-chapters article{padding:26px 0;border-bottom:1px solid #d9d9d9}
.about-chapters article>span{font-size:12px;color:#595959}
.about-chapters h3{font:400 21px/1.5 var(--korean-serif);letter-spacing:-.04em;margin:12px 0}
.about-chapters p{font-size:16px;line-height:1.9;color:#595959;margin:0}
.about-invitation{margin-top:30px}
.ventures{--gutter:max(56px,calc((100vw - 1440px)/2));padding-bottom:130px;overflow:hidden}
.ventures .section-caption{margin-bottom:54px}
.ventures-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:7%;align-items:end;margin-bottom:64px}
.ventures-title{font:400 clamp(54px,6.8vw,104px)/1.05 var(--serif);letter-spacing:-.055em;margin:0}
.ventures-title em{display:block;font-weight:400}
.ventures-description p{font-size:16px;line-height:1.9;margin:0 0 24px}
.ventures-description a{font-size:14px;display:inline-flex;gap:24px;border-bottom:1px solid #a3a3a3;padding-bottom:8px}
.ventures-description a span{transition:transform .35s var(--motion-ease)}
.ventures-description a:hover span{transform:translate(4px,-4px)}
.ventures-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #d9d9d9;padding-block:12px;font-size:14px}
.venture-view-controls{display:flex;gap:26px}
.venture-view-controls button{min-height:44px;color:#666;position:relative}
.venture-view-controls button[aria-pressed=true]{color:#080808}
.venture-view-controls button[aria-pressed=true]:after{content:'';position:absolute;inset:auto 0 4px;height:1px;background:currentColor}
.venture-track{display:grid;grid-auto-flow:column;grid-auto-columns:44%;gap:28px;overflow-x:auto;padding:24px var(--gutter) 20px;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a3a3a3 transparent}
.venture-track:focus-visible{outline:1px solid #080808;outline-offset:-8px}
.venture-track::-webkit-scrollbar{height:3px}
.venture-track::-webkit-scrollbar-thumb{background:#a3a3a3}
.venture-card{min-width:0;scroll-snap-align:start}
.venture-card:nth-child(even){padding-top:68px}
.venture-open{display:block;width:100%;text-align:left}
.venture-cover-window{display:block;position:relative;overflow:hidden}
.venture-cover{display:flex;position:relative;flex-direction:column;justify-content:space-between;width:100%;aspect-ratio:1.19;padding:26px 30px;background:#ededed;color:#080808;overflow:hidden;transition:transform .85s var(--motion-ease)}
.cover-edition{display:flex;justify-content:space-between;gap:14px;font:400 12px/1.5 var(--sans);letter-spacing:.075em}
.venture-wordmark{display:block;font:400 clamp(48px,7.7vw,118px)/.87 var(--serif);letter-spacing:-.065em;transition:transform .8s var(--motion-ease)}
.venture-wordmark>span{display:block}
.cover-caption{font:400 12px/1.5 var(--sans);letter-spacing:.03em;margin-top:24px}
.cover-wellmoment .venture-wordmark{font-family:var(--sans);font-weight:400;letter-spacing:-.09em}
.cover-wellmoment .venture-wordmark>span:last-child{margin-left:12%}
.cover-alma{background:#121212;color:#fff}
.cover-alma .venture-wordmark{font-size:clamp(80px,12.5vw,180px);text-align:center;font-style:italic;letter-spacing:-.075em;padding-right:.08em}
.cover-jasper-charlotte{background:#e2e2e2;color:#080808}
.cover-jasper-charlotte .venture-wordmark{font-size:clamp(42px,6vw,88px);line-height:1.1}
.cover-jasper-charlotte .venture-wordmark>span:last-child{font-style:italic;text-align:right}
.cover-time-off-club{background:#343434;color:#fff}
.cover-time-off-club .venture-wordmark{font-family:var(--sans);font-size:clamp(44px,7vw,98px);font-weight:600;letter-spacing:-.075em;line-height:.93}
.cover-time-off-club .venture-wordmark>span:nth-child(2){text-align:center}
.cover-time-off-club .venture-wordmark>span:nth-child(3){text-align:right}
.venture-cover.has-image{padding:0}
.venture-cover.has-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.venture-view{position:absolute;left:50%;top:50%;width:94px;height:94px;border-radius:50%;background:#fff;color:#080808;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transform:translate(-50%,-35%) scale(.8);transition:transform .4s var(--motion-ease),opacity .25s;pointer-events:none}
.venture-meta{display:grid;grid-template-columns:24px 1fr auto 22px;align-items:baseline;gap:15px;padding:22px 0}
.venture-number{font-size:12px;color:#595959}
.venture-name{min-width:0}
.venture-name strong{display:block;font-weight:400;font-size:clamp(21px,2vw,28px);letter-spacing:-.04em;line-height:1.4}
.venture-name small{display:block;font-size:14px;line-height:1.65;color:#595959;margin-top:8px;word-break:keep-all}
.venture-category{font-size:12px;color:#595959;white-space:nowrap}
.venture-arrow{font-size:25px;line-height:1;transition:transform .4s var(--motion-ease)}
@media(hover:hover){.venture-open:hover .venture-wordmark{transform:scale(1.04)}.venture-open:hover .venture-cover.has-image{transform:scale(1.03)}.venture-open:hover .venture-view{opacity:1;transform:translate(-50%,-50%) scale(1)}.venture-open:hover .venture-arrow{transform:rotate(45deg)}}
.venture-open:focus-visible .venture-view{opacity:1;transform:translate(-50%,-50%) scale(1)}
.venture-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:24px}
.venture-bottom>p{font-size:12px;color:#595959;margin:0}
.venture-paging{display:flex;align-items:center;gap:14px}
.venture-paging>span{font-size:12px;font-variant-numeric:tabular-nums;margin-right:12px}
.venture-paging>button{border:1px solid #aaa;border-radius:50%;width:48px;height:48px;font-size:22px;transition:color .2s,background .2s}
.venture-paging>button:disabled{opacity:.25;cursor:default}
.venture-paging>button:not(:disabled):hover{background:#080808;color:#fff;border-color:#080808}
.venture-track[data-layout=index]{display:block;padding-top:0;overflow:visible;list-style:none;margin:0;scroll-snap-type:none}
.venture-track[data-layout=index] .venture-card{padding:0;border-bottom:1px solid #d9d9d9}
.venture-track[data-layout=index] .venture-open{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:30px;padding:18px 0}
.venture-track[data-layout=index] .venture-cover{aspect-ratio:1.6;padding:8px;justify-content:center}
.venture-track[data-layout=index] .cover-edition,.venture-track[data-layout=index] .cover-caption,.venture-track[data-layout=index] .venture-view{display:none}
.venture-track[data-layout=index] .venture-wordmark{font-size:28px}
.venture-track[data-layout=index] .cover-alma .venture-wordmark{font-size:54px}
.venture-track[data-layout=index] .cover-jasper-charlotte .venture-wordmark{font-size:21px}
.venture-track[data-layout=index] .cover-time-off-club .venture-wordmark{font-size:22px}
.venture-track[data-layout=index] .venture-meta{padding:0;grid-template-columns:36px 1fr 110px 28px}
.venture-track[data-layout=index] .venture-name strong{font-size:clamp(22px,2.5vw,32px)}
.venture-track[data-layout=index] .venture-category{font-size:14px}
.venture-track[data-layout=index]+.venture-bottom .venture-paging{display:none}
.venture-dialog{width:min(1350px,calc(100% - 64px));max-width:100%;max-height:calc(100dvh - 64px);margin:auto}
.venture-dialog::backdrop{background:#080808b8;backdrop-filter:blur(5px)}
.venture-dialog[open]{animation:venture-sheet-in .55s var(--motion-ease)}
.venture-sheet{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.venture-sheet-visual{min-width:0;display:flex;background:#ededed}
.venture-sheet-visual .venture-cover{height:100%;min-height:620px;aspect-ratio:auto;padding:32px;justify-content:space-between}
.venture-sheet-visual .venture-wordmark{font-size:clamp(55px,7.6vw,112px)}
.venture-sheet-visual .cover-alma .venture-wordmark{font-size:clamp(90px,12vw,176px)}
.venture-sheet-visual .cover-jasper-charlotte .venture-wordmark{font-size:clamp(40px,5.3vw,78px)}
.venture-sheet-copy{padding:44px clamp(26px,4vw,56px);min-width:0}
.venture-eyebrow{font-size:12px;color:#595959;margin:0 0 24px}
.venture-sheet-copy h3{font:400 clamp(42px,4vw,62px)/1.05 var(--serif);letter-spacing:-.045em;margin:0 0 24px;overflow-wrap:anywhere}
.venture-sheet-summary{font-size:16px;line-height:1.85;margin-bottom:32px}
.venture-sheet-copy dl{margin:0}
.venture-sheet-copy dl>div{border-top:1px solid #d9d9d9;padding:17px 0;display:grid;grid-template-columns:105px 1fr;gap:24px}
.venture-sheet-copy dt{font-size:12px;color:#595959;padding-top:3px}
.venture-sheet-copy dd{font-size:15px;line-height:1.8;margin:0;word-break:keep-all}
.venture-partner{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#080808;color:#fff;width:100%;padding:18px 20px;margin-top:25px;font-size:14px}
.venture-partner>span:last-child{font-size:24px;transition:transform .3s}
.venture-partner:hover>span:last-child{transform:translate(3px,-3px)}
.venture-social{display:flex;justify-content:space-between;gap:20px;font-size:14px;padding-block:18px;border-bottom:1px solid #d9d9d9}
.venture-social:hover{text-decoration:underline;text-underline-offset:5px}
/* A large invitation followed by a clear, expandable index of ways to meet. */
.correspondence{background:#111;color:#fff;padding:100px 0 50px;position:relative}
.correspondence .section-caption{margin-bottom:70px}
.correspondence-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:44px}
.correspondence-title{font:400 clamp(76px,10.7vw,160px)/.99 var(--serif);letter-spacing:-.055em;margin:0}
.correspondence-title em{font-weight:400;display:inline-block;padding-right:.08em}
.correspondence-intro{font-size:16px;line-height:1.9;color:#bfbfbf;margin:0 0 12px}
.invitation-rule{height:1px;background:#494949;position:relative;margin:105px 0 100px}
.invitation-circle{position:absolute;right:8%;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:174px;height:174px;border-radius:50%;background:#fff;color:#111;font-size:14px;text-align:center;line-height:1.6;transition:background .3s,transform .3s var(--motion-ease)}
.invitation-circle>span:last-child{font-size:28px;line-height:1;transition:transform .45s var(--motion-ease)}
.invitation-circle:hover>span:last-child{transform:rotate(-45deg)}
.invitation-circle[data-magnet]{translate:0 -50%;transform:none}
.connection-paths{scroll-margin-top:110px}
.connection-path{display:grid;grid-template-columns:50px 1fr 31% 36px;align-items:center;gap:28px;width:100%;border-top:1px solid #494949;padding:31px 0;text-align:left;position:relative;isolation:isolate}
.connection-path:last-child{border-bottom:1px solid #494949}
.connection-path:before{content:'';position:absolute;inset:0 -20px;background:#232323;z-index:-1;transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--motion-ease)}
.path-number{font-size:12px;color:#bfbfbf;align-self:start;margin-top:9px}
.path-title{font-size:clamp(22px,3vw,38px);font-weight:400;letter-spacing:-.05em;line-height:1.4;transition:transform .45s var(--motion-ease)}
.path-title small{display:block;font:italic 400 17px/1.5 var(--serif);letter-spacing:0;color:#bfbfbf;margin-top:6px}
.path-description{font-size:14px;line-height:1.85;color:#bfbfbf;word-break:keep-all}
.path-arrow{font-size:32px;transition:transform .45s var(--motion-ease);justify-self:end}
.connection-path:hover:before,.connection-path:focus-visible:before{transform:scaleY(1)}
.connection-path:hover .path-title{transform:translateX(10px)}
.connection-path:hover .path-arrow{transform:rotate(45deg)}
.correspondence-note{font-size:12px;color:#bfbfbf;margin:24px 0 0}
.portfolio-footer.page-width{width:100%;padding:80px max(56px,calc((100% - 1440px)/2)) 30px;background:#111;color:#fff}
.portfolio-footer .signature{border-color:#494949}
.portfolio-footer .preview-note{color:#bfbfbf}
.site-header.is-on-dark{background:#111;color:#fff}
.connect-dialog{width:min(710px,100%);height:100dvh;max-height:100dvh;max-width:100%;margin:0 0 0 auto;outline:0}
.connect-dialog::backdrop{background:#080808b8;backdrop-filter:blur(5px)}
.connect-dialog[open]{animation:connection-drawer-in .6s var(--motion-ease)}
.connect-body{padding:32px 48px 50px}
.connect-body h2{font-size:36px;line-height:1.4}
.connect-body #connection-purpose{font-size:14px;padding:14px 34px 14px 14px;border:1px solid #ccc;width:100%;background:#fff;color:#080808;border-radius:0}
.connect-body .purpose-label{margin-bottom:10px!important}
.js-reveals .venture-cover-window[data-reveal]{opacity:1;transform:none;clip-path:inset(0 0 100% 0)}
.js-reveals .venture-cover-window[data-reveal].is-visible{clip-path:inset(0)}
.motion-paused .venture-cover-window[data-reveal]{clip-path:none!important}
.motion-paused .invitation-circle[data-magnet]{transform:none!important}
@keyframes venture-sheet-in{from{opacity:0;transform:translateY(35px);clip-path:inset(6% 0 6% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes connection-drawer-in{from{transform:translateX(100%)}to{transform:none}}
@media(min-width:1700px){.venture-track{grid-auto-columns:min(42%,680px)}}
@media(max-width:1050px){.ventures{--gutter:36px}.venture-track{grid-auto-columns:54%;gap:22px}.ventures-intro{gap:40px}.venture-meta{grid-template-columns:20px 1fr 20px;gap:12px}.venture-category{display:none}.venture-track[data-layout=index] .venture-meta{grid-template-columns:36px 1fr 28px}.venture-wordmark{font-size:10vw}.cover-alma .venture-wordmark{font-size:16vw}.cover-jasper-charlotte .venture-wordmark{font-size:7.5vw}.cover-time-off-club .venture-wordmark{font-size:9vw}.venture-sheet{grid-template-columns:.85fr 1fr}.venture-sheet-copy{padding:30px}.venture-sheet-copy dl>div{grid-template-columns:1fr;gap:7px}.venture-sheet-visual .venture-wordmark{font-size:8vw}.venture-sheet-visual .cover-alma .venture-wordmark{font-size:12vw}.venture-sheet-visual .cover-jasper-charlotte .venture-wordmark{font-size:4.9vw}.correspondence-heading{gap:30px}.correspondence-intro{font-size:14px}.connection-path{grid-template-columns:30px 1fr 30% 30px;gap:20px}.portfolio-footer.page-width{padding-inline:36px}}
@media(max-width:760px){.ventures{--gutter:22px;padding-bottom:76px}.ventures .section-caption{margin-bottom:32px}.ventures-intro{grid-template-columns:1fr;gap:30px;margin-bottom:34px}.ventures-title{font-size:clamp(58px,12vw,90px)}.ventures-title em{display:inline}.ventures-description p{margin-bottom:18px}.ventures-toolbar{font-size:12px}.venture-view-controls{gap:20px;font-size:14px}.venture-track{grid-auto-columns:82%;gap:18px;padding-top:12px}.venture-card:nth-child(even){padding-top:36px}.venture-cover{aspect-ratio:.95;padding:22px}.venture-wordmark{font-size:16vw}.cover-alma .venture-wordmark{font-size:27vw}.cover-jasper-charlotte .venture-wordmark{font-size:12vw}.cover-time-off-club .venture-wordmark{font-size:15vw}.venture-meta{padding-top:18px}.venture-name strong{font-size:23px}.venture-name small{font-size:14px}.venture-bottom{gap:16px;align-items:flex-start;margin-top:20px}.venture-bottom>p{max-width:155px;line-height:1.8}.venture-paging{gap:8px}.venture-paging>span{margin-right:6px}.venture-paging>button{width:44px;height:44px}.venture-track[data-layout=index] .venture-open{grid-template-columns:90px 1fr;gap:18px;padding-block:20px}.venture-track[data-layout=index] .venture-meta{grid-template-columns:1fr 20px;gap:12px}.venture-track[data-layout=index] .venture-number{display:none}.venture-track[data-layout=index] .venture-name strong{font-size:21px}.venture-track[data-layout=index] .venture-name small{font-size:12px}.venture-track[data-layout=index] .venture-wordmark{font-size:20px}.venture-track[data-layout=index] .cover-alma .venture-wordmark{font-size:36px}.venture-track[data-layout=index] .cover-jasper-charlotte .venture-wordmark{font-size:14px}.venture-track[data-layout=index] .cover-time-off-club .venture-wordmark{font-size:14px}.venture-dialog{width:100%;max-height:100dvh;height:100dvh;margin:0}.venture-sheet{grid-template-columns:1fr}.venture-sheet-visual .venture-cover{min-height:0;height:320px;padding:24px}.venture-sheet-visual .venture-wordmark{font-size:76px;max-width:430px;width:100%;margin-inline:auto}.venture-sheet-visual .cover-alma .venture-wordmark{font-size:130px}.venture-sheet-visual .cover-jasper-charlotte .venture-wordmark{font-size:50px}.venture-sheet-visual .cover-time-off-club .venture-wordmark{font-size:60px;max-width:270px}.venture-sheet-copy{padding:32px 24px}.venture-sheet-copy h3{font-size:48px}.correspondence{padding:62px 0 34px}.correspondence .section-caption{margin-bottom:45px}.correspondence-heading{display:block}.correspondence-title{font-size:clamp(70px,15vw,114px)}.correspondence-intro{font-size:16px;margin:32px 0 0}.invitation-rule{margin:86px 0 80px}.invitation-circle{width:142px;height:142px;font-size:12px;right:3%}.connection-paths{scroll-margin-top:84px}.connection-path{grid-template-columns:24px 1fr 24px;gap:14px;padding:24px 0}.path-number{margin-top:5px}.path-title{font-size:25px}.path-description{grid-column:2;grid-row:2;font-size:14px}.path-description br{display:none}.path-arrow{grid-column:3;grid-row:1;font-size:26px}.path-title small{font-size:16px}.connection-path:before{inset-inline:-10px}.correspondence-note{line-height:1.8}.portfolio-footer.page-width{padding:45px 22px 26px}.connect-body{padding:28px 24px 40px}.connect-body h2{font-size:30px}}
@media(max-width:430px){.ventures{--gutter:18px}.venture-cover{padding:18px}.cover-edition{font-size:12px;letter-spacing:0}.venture-name strong{font-size:21px}.venture-meta{gap:9px}.venture-paging>span{display:none}.portfolio-footer.page-width{padding-inline:18px}.correspondence-title{font-size:18vw}.ventures-title{font-size:15vw}}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .venture-cover-window[data-reveal]{clip-path:none!important}}
