@font-face{font-family:Portfolio Display;src:url('/fonts/space-grotesk-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
.portfolio-mobile-section,.portfolio-mobile-intro,.portfolio-mobile-down{display:none}
.portfolio-mobile-source time{white-space:nowrap}
/* Image downloading and viewport animation are independent. No layout moves. */
.portfolio-image-reveal:not(.is-revealed){opacity:0}
.portfolio-image-fade.is-revealed{animation:portfolio-image-fade-in .65s ease-out}
.portfolio-image-wipe.is-revealed{animation:portfolio-image-uncover .75s cubic-bezier(.22,.61,.36,1)}
@keyframes portfolio-image-fade-in{from{opacity:0}to{opacity:1}}
@keyframes portfolio-image-uncover{from{opacity:.35;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@media(prefers-reduced-motion:reduce){.portfolio-image-reveal{animation:none!important;opacity:1!important;clip-path:none!important}}
#PB6PXMmsb5Yr82Zh>div:not(.portfolio-accolades-section){display:none!important}
.portfolio-accolades-section{display:block;box-sizing:border-box;max-width:1366px;margin:0 auto;padding:64px clamp(24px,5.8565vw,80px);color:#2b2b2b;font:400 16px/1.5 Portfolio UI,Portfolio CJK,sans-serif}
.portfolio-accolades-section h2{margin:0 0 40px;font:400 clamp(36px,4.2vw,56px)/1.15 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.025em}
.portfolio-accolades-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:32px;max-width:1100px;margin:0 auto}
.portfolio-accolade{display:flex;align-items:center;justify-content:center;height:118px;margin:0;min-width:0;text-align:center}
.portfolio-accolade img{display:block;width:100%;max-width:185px;height:100px;object-fit:contain}
@media(min-width:700px) and (max-width:999px){.portfolio-accolades-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}}
#PBpMmrWhSvVGg1Vw>div:not(.portfolio-mobile-section){display:none!important}
.portfolio-press-link{display:block;color:inherit;text-decoration:none}
.portfolio-press-link img{outline:1px solid transparent;outline-offset:3px;transition:filter .22s ease,box-shadow .22s ease,outline-color .22s ease}
.portfolio-press-link h3{transition:text-shadow .22s ease}
.portfolio-press-link:focus-visible{outline:2px solid #304254;outline-offset:5px}
.portfolio-press-link:focus-visible img{filter:brightness(1.04) contrast(1.03);outline-color:#304254;box-shadow:0 8px 20px #0002}
.portfolio-press-link:focus-visible h3{text-shadow:.3px 0 currentColor}
@media(hover:hover) and (pointer:fine){
  .portfolio-press-link:hover img{filter:brightness(1.04) contrast(1.03);outline-color:#304254;box-shadow:0 8px 20px #0002}
  .portfolio-press-link:hover h3{text-shadow:.3px 0 currentColor}
}
@media(prefers-reduced-motion:reduce){.portfolio-press-link img,.portfolio-press-link h3{transition:none}}
#PBdJfYg5dtvMksnw>div:not(.portfolio-mobile-section){display:none!important}
#PBdJfYg5dtvMksnw .portfolio-mobile-section{display:block;box-sizing:border-box;width:100%;max-width:1366px;margin:0 auto;padding:80px clamp(24px,5.8565vw,80px);color:#edf0f2;font:400 17px/1.5 Portfolio UI,Portfolio CJK,sans-serif}
#PBdJfYg5dtvMksnw .portfolio-mobile-section h2{margin:0 0 50px;font:400 clamp(44px,6.18vw,84.375px)/1.15 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.025em}
.portfolio-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px 30px}
.portfolio-project-grid .portfolio-mobile-project{min-width:0;margin:0}
.portfolio-project-grid .portfolio-mobile-year{margin:0 0 6px;color:#c2c7ca;font-size:17px}
.portfolio-project-grid h3{margin:0 0 16px;font:400 26px/1.3 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.025em;overflow-wrap:anywhere}
.portfolio-project-grid img{display:block;width:100%;height:auto;aspect-ratio:381.35/224.92;object-fit:cover}
.portfolio-project-grid .portfolio-mobile-description{margin:20px 0 0;color:#cdd1d3;font-size:17px;line-height:1.6}
.portfolio-mobile-project-link{display:block;color:inherit;text-decoration:none}
.portfolio-mobile-project-link img{outline:1px solid transparent;outline-offset:3px;transition:filter .22s ease,box-shadow .22s ease,outline-color .22s ease}
.portfolio-mobile-project-link:focus-visible{outline:2px solid #edf0f2;outline-offset:6px}
.portfolio-mobile-project-link:focus-visible img{filter:brightness(1.08) contrast(1.04);box-shadow:0 14px 30px #0005;outline-color:#edf0f2b3}
@media(hover:hover) and (pointer:fine){.portfolio-mobile-project-link:hover img{filter:brightness(1.08) contrast(1.04);box-shadow:0 14px 30px #0005;outline-color:#edf0f2b3}.portfolio-mobile-project-link:hover h3{color:#fff;text-shadow:.35px 0 currentColor}}
@media(prefers-reduced-motion:reduce){.portfolio-mobile-project-link img{transition:none}}
@media(min-width:700px){
  .portfolio-project-grid{row-gap:0}
  .portfolio-project-grid .portfolio-mobile-project{display:grid;grid-template-rows:subgrid;grid-row:span 4;padding-bottom:64px}
  .portfolio-project-grid .portfolio-mobile-project-link{display:grid;grid-template-rows:subgrid;grid-row:span 2}
}
@media(min-width:700px) and (max-width:999px){.portfolio-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}.portfolio-project-grid .portfolio-mobile-project{padding-bottom:48px}}
@media(max-width:699px){
  #PBdJfYg5dtvMksnw .portfolio-mobile-section{padding:48px 24px 56px}
  #PBdJfYg5dtvMksnw .portfolio-mobile-section h2{font-size:clamp(32px,9vw,44px);margin-bottom:32px}
  .portfolio-project-grid{grid-template-columns:minmax(0,1fr);gap:44px}
  .portfolio-project-grid .portfolio-mobile-year{font-size:14px}
  .portfolio-project-grid .portfolio-mobile-description{margin-top:16px;font-size:15px;line-height:1.7}
}
@media(min-width:700px){
  #PBpMmrWhSvVGg1Vw .portfolio-mobile-section{display:block;box-sizing:border-box;width:100%;max-width:1366px;margin:0 auto;padding:80px clamp(24px,5.8565vw,80px) 80px;color:#2b2b2b;font:400 17px/1.5 Portfolio UI,Portfolio CJK,sans-serif}
  #PBpMmrWhSvVGg1Vw .portfolio-mobile-section h2{margin:0 0 50px;font:400 clamp(44px,6.18vw,84.375px)/1.15 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.025em}
  .portfolio-press-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0 20px}
  .portfolio-mobile-press{display:flex;flex-direction:column;min-width:0}
  .portfolio-mobile-press img{display:block;width:100%;height:auto;aspect-ratio:358.47/190.15;object-fit:cover;margin-bottom:16px}
  .portfolio-mobile-press h3{margin:0 0 10px;font:400 17px/1.45 Portfolio UI,Portfolio CJK,sans-serif;overflow-wrap:anywhere}
  .portfolio-mobile-source{margin:0 0 12px;font-size:13px;color:#646b70}
}
@media(min-width:700px) and (max-width:999px){.portfolio-press-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:40px 28px}}
@media(max-width:699px){
  .portfolio-accolades-section{padding:48px 24px 56px}
  .portfolio-accolades-section h2{font-size:clamp(32px,9vw,44px);margin-bottom:28px}
  .portfolio-accolades-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
  .portfolio-accolade{height:96px}
  .portfolio-accolade img{height:82px;max-width:138px}
  #PBC53r4511GJM5YH{position:relative;--mobile-hero-height:max(610px,calc(100svh - 48px));height:var(--mobile-hero-height)!important}
  #PBC53r4511GJM5YH :is(._8jGYJw,.onhyOQ,.GDnEHQ,._mXnjA,.QhExXw){height:var(--mobile-hero-height)!important}
  #PBC53r4511GJM5YH #LBKS81xM3P54QccB,#PBC53r4511GJM5YH #LBRjGMPlnl9shbt6{display:none!important}
  .portfolio-mobile-intro{display:block;position:absolute;z-index:1;top:48px;left:24px;right:24px;color:#edf0f2;pointer-events:none}
  .portfolio-mobile-intro h1{font:400 clamp(38px,11.5vw,68px)/1.12 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.045em;margin:0 0 18px}
  .portfolio-mobile-intro p{font:400 16px/1.65 Portfolio UI,Portfolio CJK,sans-serif;letter-spacing:0;margin:0;max-width:340px;text-wrap:balance}
  .portfolio-mobile-down{display:block;position:absolute;z-index:1;bottom:24px;right:24px;width:44px;height:44px;border:0;background:transparent;color:#edf0f2;font:400 36px/1 Portfolio UI,sans-serif;cursor:pointer}
  :is(#PBdJfYg5dtvMksnw,#PBpMmrWhSvVGg1Vw)>div:not(.portfolio-mobile-section){display:none!important}
  .portfolio-mobile-section{display:block;box-sizing:border-box;width:100%;padding:48px 24px 56px;font:400 16px/1.65 Portfolio UI,Portfolio CJK,sans-serif;color:#2b2b2b}
  .portfolio-mobile-section *{box-sizing:border-box}
  .portfolio-mobile-section h2{font:400 clamp(32px,9vw,44px)/1.15 Portfolio Display,Portfolio CJK,sans-serif;letter-spacing:-.025em;margin:0 0 32px}
  .portfolio-mobile-section h3{font-size:22px;font-weight:500;line-height:1.35;letter-spacing:-.025em;margin:0 0 16px;overflow-wrap:anywhere}
  .portfolio-mobile-section img{display:block;width:100%;height:auto}
  .portfolio-mobile-section a{color:inherit;text-decoration:none}
  .portfolio-mobile-section a:focus-visible,.portfolio-mobile-down:focus-visible{outline:2px solid currentColor;outline-offset:5px}
  #PBdJfYg5dtvMksnw .portfolio-mobile-section{color:#edf0f2}
  .portfolio-mobile-project{margin:0 0 44px}
  .portfolio-mobile-project:last-child,.portfolio-mobile-press:last-child{margin-bottom:0}
  .portfolio-mobile-year{margin:0 0 4px;font-size:14px;color:#c2c7ca}
  .portfolio-mobile-project img{aspect-ratio:381.35/224.92;object-fit:cover}
  .portfolio-mobile-project-link{display:block}
  .portfolio-mobile-description{margin:16px 0 0;color:#cdd1d3;font-size:15px;line-height:1.7}
  .portfolio-mobile-press{margin:0 0 32px}
  .portfolio-mobile-press img{aspect-ratio:358.47/190.15;object-fit:cover;margin-bottom:12px}
  .portfolio-mobile-press h3{font-size:16px;font-weight:400;line-height:1.5;letter-spacing:0;margin-bottom:8px}
  .portfolio-mobile-source{font-size:13px;line-height:1.5;color:#646b70;margin:0 0 12px}
  #PBpMmrWhSvVGg1Vw .portfolio-mobile-section{padding-bottom:96px}
}
