@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500&family=Inter:wght@400;500;600&display=swap";:root{--ink:#16181c;--text:#1b1d21;--muted:#54565a;--faint:#8a97a4;--line:#e7e4dd;--paper:#ffffff;--blueprint:#f4f7f9;--blue-pale:#eef3f7;--blue-panel:#f1f5f8;--maxw:1240px;--pad:clamp(22px,5vw,76px);--serif:"Fraunces",Georgia,serif;--sans:"Inter",system-ui,-apple-system,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--text);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}.nav{position:relative;border-bottom:1px solid var(--line);background:var(--paper)}.nav-inner{display:flex;justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px}.nav .brand{font-family:var(--serif);font-weight:500;font-size:23px;letter-spacing:.005em}.nav .links{display:flex;gap:34px;font-size:14px;color:var(--muted);letter-spacing:.02em}.nav .links a:hover,.nav .links a[aria-current=page]{color:var(--text)}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;background:none;border:0;cursor:pointer}.hamburger span{display:block;height:1.6px;width:22px;background:var(--text);transition:transform .25s,opacity .2s}.hamburger.is-open span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.mobile-menu{display:none;flex-direction:column;border-top:1px solid #eee}.mobile-menu a{padding:16px var(--pad);border-bottom:1px solid #f0eeea;font-size:16px;color:#26282c}.mobile-menu.open{display:flex}.hero{background:var(--ink);color:#fff}.hero-inner{display:grid;grid-template-columns:1.12fr .88fr;gap:36px;min-height:600px;align-items:center;padding-top:40px;padding-bottom:40px}.hero .eyebrow{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#9a9ca0;margin-bottom:24px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(38px,5.4vw,72px);line-height:1.02;letter-spacing:-.015em}.hero h1 .line{display:block}.hero h1 em{font-style:italic}.hero .sub{margin-top:26px;font-size:18px;line-height:1.6;max-width:36ch;color:#c7c8cb}.hero .rule{height:1px;background:#34363b;margin-top:32px;transform-origin:left}.hero .proc{margin-top:16px;font-family:var(--serif);font-style:italic;font-size:16px;color:#9a9ca0}.hero .proc b{color:#fff;font-style:normal;font-weight:500}.hero .photo{display:flex;align-items:center;justify-content:flex-end}.hero .photo .frame{width:100%;max-width:420px;aspect-ratio:1/1;background-image:url(/images/jp-hero-2026.jpg);background-size:cover;background-position:center center}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes grow{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.anim{opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.hero .eyebrow.anim{animation-delay:.05s}.hero h1 .l1,.hero h1 .l2,.hero h1 .l3,.hero h1 .l4{animation:rise .8s cubic-bezier(.2,.7,.2,1) both;opacity:0}.hero h1 .l1{animation-delay:.16s}.hero h1 .l2{animation-delay:.28s}.hero h1 .l3{animation-delay:.4s}.hero h1 .l4{animation-delay:.52s}.hero .sub.anim{animation-delay:.66s}.hero .rule{opacity:0;animation:grow .9s ease both;animation-delay:.78s}.hero .proc.anim{animation-delay:.9s}.hero .photo .frame{opacity:0;animation:fadein 1.1s ease both;animation-delay:.5s}@media(prefers-reduced-motion:reduce){.anim,.hero h1 .line,.hero .rule,.hero .proc,.hero .photo .frame{animation:none!important;opacity:1!important;transform:none!important}}.intro{padding-top:82px;padding-bottom:30px;text-align:center}.intro-inner{max-width:760px;margin:0 auto}.intro .k{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:20px}.intro p{font-family:var(--serif);font-size:clamp(21px,2.4vw,27px);line-height:1.5;font-weight:400;color:#26282c}.doms{padding-top:40px;padding-bottom:78px}.doms-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.doms .d{padding:26px 20px 24px;border-top:1px solid var(--text);border-radius:6px;transition:background .18s ease}.doms .d:hover{background:var(--blue-pale)}.doms .d .n{font-size:12px;letter-spacing:.14em;color:var(--faint);font-variant-numeric:tabular-nums}.doms .d h3{font-family:var(--serif);font-weight:500;font-size:20px;margin-top:14px;line-height:1.16;min-height:2.32em;display:flex;align-items:flex-start}.doms .d p{font-size:14px;color:var(--muted);margin-top:8px;line-height:1.55}.writing{background:var(--blue-panel);border-top:1px solid #e2e9ee;padding-top:70px;padding-bottom:84px}.writing .lead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:34px}.writing .lead h2{font-family:var(--serif);font-weight:500;font-size:30px}.writing .lead a{font-size:14px;color:var(--muted);border-bottom:1px solid #b9c4cc;padding-bottom:2px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.cards .c .art{aspect-ratio:1;border:1px solid #dde5ea;overflow:hidden;background:var(--blueprint)}.cards .c .art img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.cards .c:hover .art img{transform:scale(1.03)}.cards .c h4{font-family:var(--serif);font-weight:500;font-size:17px;margin-top:16px;line-height:1.2;min-height:4.8em}.cards .c p{font-size:13.5px;color:#5c5e62;margin-top:8px;line-height:1.5}.foot{background:var(--ink);color:#d7d8da;padding-top:56px;padding-bottom:40px}.foot .top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;align-items:flex-start;border-bottom:1px solid #2c2e33;padding-bottom:30px}.foot .brand{font-family:var(--serif);font-size:24px;color:#fff;margin-bottom:16px}.foot .roles{font-size:13.5px;color:#9a9ca0;line-height:1.95}.foot .roles a{color:#c8cace;border-bottom:1px solid #3a3d42;transition:border-color .18s,color .18s}.foot .roles a:hover{color:#fff;border-color:#8aa6bc}.foot .soc{display:flex;gap:22px;font-size:14px}.foot .soc a:hover{color:#fff}.foot .bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:24px;font-size:12.5px;color:#7d7f83;letter-spacing:.02em}.page-head{padding-top:64px;padding-bottom:8px}.page-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(38px,5vw,56px);letter-spacing:-.01em}.page-head .lede{margin-top:16px;font-size:18px;color:var(--muted);max-width:62ch;line-height:1.6}.page-head .hr{height:1px;background:var(--text);margin-top:26px}.prose{max-width:720px;padding-top:40px;padding-bottom:20px}.prose p{font-size:17px;line-height:1.75;color:#2b2d31;margin-bottom:22px}.prose p strong{font-weight:600;color:var(--text)}.about-texture{font-family:var(--serif);font-size:19px;line-height:1.7;color:#33363b}.band{padding-top:30px;padding-bottom:70px}.band h2{font-family:var(--serif);font-weight:500;font-size:26px;margin-bottom:8px}.band .sub{font-size:14px;color:var(--faint);margin-bottom:28px}.caps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;border-top:1px solid var(--text)}.caps .cap{padding:22px 20px 24px;border-top:0}.caps .cap h3{font-family:var(--serif);font-weight:500;font-size:18px;margin-bottom:8px}.caps .cap p{font-size:13.5px;color:var(--muted);line-height:1.55}.edu{padding-top:8px;padding-bottom:70px;max-width:720px}.edu h2{font-family:var(--serif);font-weight:500;font-size:22px;margin-bottom:18px}.edu ul{list-style:none}.edu li{padding:14px 0;border-top:1px solid var(--line);font-size:15px;color:#2b2d31}.edu li .t{font-weight:500}.edu li .s{color:var(--muted)}.work-domains{padding-top:36px;padding-bottom:20px;display:grid;gap:2px}.work-domains .wd{padding:34px 0;border-top:1px solid var(--text);display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:start}.work-domains .wd .n{font-family:var(--serif);font-weight:500;font-size:20px}.work-domains .wd .body p{font-size:16px;line-height:1.65;color:#2b2d31;max-width:60ch}.work-domains .wd .body .links{margin-top:12px;display:flex;gap:18px;font-size:14px}.work-domains .wd .body .links a{border-bottom:1px solid #c7c3ba;padding-bottom:2px;color:var(--muted)}.work-domains .wd .body .links a:hover{color:var(--text)}.investor-note{padding:30px 0 70px;max-width:720px;font-size:15px;color:var(--muted);line-height:1.7;border-top:1px solid var(--line)}.contact{padding-top:40px;padding-bottom:80px;display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1000px}.contact .intro-copy p{font-size:17px;line-height:1.7;color:#2b2d31;margin-bottom:20px}.contact .elsewhere{margin-top:26px}.contact .elsewhere .lbl{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:12px}.contact .elsewhere a{display:inline-block;margin-right:20px;border-bottom:1px solid #c7c3ba;padding-bottom:2px;font-size:15px}form.cf{display:flex;flex-direction:column;gap:16px}form.cf label{font-size:13px;color:var(--muted);margin-bottom:-8px}form.cf input,form.cf textarea{font-family:var(--sans);font-size:15px;padding:12px 14px;border:1px solid #d7dbdf;border-radius:6px;background:#fbfcfd;color:var(--text)}form.cf input:focus,form.cf textarea:focus{outline:2px solid #8aa6bc;border-color:#8aa6bc}form.cf textarea{min-height:150px;resize:vertical}form.cf button{align-self:flex-start;background:var(--ink);color:#fff;border:0;border-radius:6px;padding:12px 26px;font-size:15px;cursor:pointer;transition:opacity .2s}form.cf button:hover{opacity:.88}.journal{padding-top:32px;padding-bottom:44px;display:grid;grid-template-columns:1.45fr 1fr;gap:52px}.feat .art,.rail .item .art{overflow:hidden;background:var(--blueprint);border:1px solid #e7ebee}.feat .art{aspect-ratio:16/11}.feat .art img,.rail .item .art img{width:100%;height:100%;object-fit:cover}.feat .date{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#8a8c90;margin-top:20px}.feat h2{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,34px);line-height:1.12;margin-top:12px}.feat .ex{font-size:16px;color:var(--muted);margin-top:14px;line-height:1.6;max-width:52ch}.feat .rd{display:inline-block;margin-top:16px;font-size:14px;border-bottom:1px solid #c7c3ba;padding-bottom:2px}.rail{display:flex;flex-direction:column}.rail .item{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.rail .item:first-child{border-top:0;padding-top:0}.rail .item .art{aspect-ratio:1}.rail .item .date{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:#8a8c90}.rail .item h3{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.2;margin-top:8px}.rail .item p{font-size:13.5px;color:#5c5e62;margin-top:8px;line-height:1.5}.essay{padding-top:44px;padding-bottom:80px}.essay-head{max-width:760px;margin:0 auto}.essay-head .date{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#8a8c90}.essay-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4vw,44px);line-height:1.1;margin-top:12px;letter-spacing:-.01em}.essay-hero{max-width:960px;margin:34px auto 0;aspect-ratio:16/8;overflow:hidden;background:var(--blueprint);border:1px solid #e7ebee}.essay-hero img{width:100%;height:100%;object-fit:cover}.essay-body{max-width:680px;margin:40px auto 0}.essay-body p{font-size:18px;line-height:1.75;color:#26282c;margin-bottom:24px}.essay-body p:first-of-type{font-family:var(--serif);font-size:21px;line-height:1.6;color:#1b1d21}.essay-foot{max-width:680px;margin:44px auto 0;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:14px;color:var(--muted)}.essay-foot a{border-bottom:1px solid #c7c3ba;padding-bottom:2px}@media(max-width:900px){.doms-grid,.cards{grid-template-columns:1fr 1fr;gap:14px}.caps{grid-template-columns:1fr 1fr}.journal,.contact{grid-template-columns:1fr;gap:36px}}@media(max-width:820px){.nav .links{display:none}.hamburger{display:flex}.hero-inner{grid-template-columns:1fr;gap:30px;min-height:0;padding-top:40px;padding-bottom:48px}.hero .photo{justify-content:center;order:-1}.hero .photo .frame{max-width:280px}.intro{padding-top:54px}.work-domains .wd{grid-template-columns:1fr;gap:12px}}@media(max-width:560px){.doms-grid,.cards,.caps{grid-template-columns:1fr}.foot .top{flex-direction:column}}.about-top{display:grid;grid-template-columns:1.7fr 1fr;gap:52px;align-items:start;padding-top:40px}.about-top .prose{max-width:none;padding-top:0}.about-aside{position:sticky;top:40px}.about-art{aspect-ratio:1;border:1px solid #dde5ea;overflow:hidden;background:var(--blueprint)}.about-art img{width:100%;height:100%;object-fit:cover}.work-rows{padding-top:20px;padding-bottom:10px}.wrow{display:grid;grid-template-columns:1fr 1.5fr;gap:44px;align-items:center;padding:44px 0;border-top:1px solid var(--line)}.wrow.reverse{grid-template-columns:1.5fr 1fr}.wrow.reverse .wrow-art{order:2}.wrow.reverse .wrow-text{order:1}.wrow-art{aspect-ratio:1;border:1px solid #dde5ea;overflow:hidden;background:var(--blueprint)}.wrow-art img{width:100%;height:100%;object-fit:cover}.wrow-text h2{font-family:var(--serif);font-weight:600;font-size:23px;margin-bottom:14px;line-height:1.15}.wrow-text p{font-size:16px;line-height:1.65;color:#2b2d31;max-width:60ch}.wrow-text .links{margin-top:14px;display:flex;gap:18px;flex-wrap:wrap;font-size:14px}.wrow-text .links a{border-bottom:1px solid #c7c3ba;padding-bottom:2px;color:var(--muted)}.wrow-text .links a:hover{color:var(--text)}.contact .elsewhere.companies a{display:block;margin-right:0;margin-bottom:8px;width:max-content}@media(max-width:900px){.about-top{grid-template-columns:1fr;gap:28px}.about-aside{position:static;max-width:340px}.wrow,.wrow.reverse{grid-template-columns:1fr;gap:20px}.wrow.reverse .wrow-art,.wrow.reverse .wrow-text{order:0}.wrow-art{max-width:340px}}.cf .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.cf-error{color:#a23b3b;font-size:13.5px;margin-top:4px}.cf button:disabled{opacity:.6;cursor:default}.form-col{width:100%}.cf-success{display:flex;align-items:center;gap:16px;border:1px solid #cfe0d4;background:#f3f8f4;border-radius:8px;padding:22px 24px}.cf-success[hidden]{display:none}.cf-success .check{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:#e2f0e6;color:#3f7d54;display:flex;align-items:center;justify-content:center;font-size:19px}.cf-success p{font-size:15px;color:#2b2d31;line-height:1.55;margin:0}
