:root{--po-paper:#f7f7f4;--po-ink:#20211c;--po-muted:#6f716a;--po-red:#b44535;--po-line:rgba(32,33,28,.18);--po-warm:#ddd6c9}
.po-page{background:var(--po-paper);color:var(--po-ink)}
.po-page .site-header{color:var(--po-ink)}
.po-label{margin:0;font:500 10px/1.4 Jura,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--po-muted)}
.po-label:before{content:"";display:inline-block;width:8px;height:8px;margin-right:13px;background:var(--po-red)}
.po-hero{height:100svh;min-height:0;padding:76px 4.5vw 0;display:grid;grid-template-columns:.82fr 1.18fr;align-items:stretch;position:relative;border-bottom:1px solid var(--po-line)}
.po-hero__copy{align-self:stretch;padding:6vh 5vw 8vh 4vw;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}
.po-hero h1,.po-intro h2,.po-works h2,.po-process h2{font:300 clamp(58px,7.3vw,112px)/.9 "Noto Sans KR",sans-serif;letter-spacing:-.075em;margin:34px 0}
.po-hero h1 em{font-style:normal;color:var(--po-red)}
.po-hero__copy>p:not(.po-label){max-width:440px;font:300 15px/1.8 "Noto Sans KR",sans-serif;color:var(--po-muted);margin:0 0 38px}
.po-link{display:inline-flex;gap:42px;padding:0 2px 10px;border-bottom:1px solid var(--po-ink);font:500 10px Jura,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.po-link span{color:var(--po-red)}
.po-hero__image{margin:0;min-height:0;position:relative;align-self:stretch;overflow:hidden;background:#d7d1c6}
.po-hero__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.72) contrast(.98)}
.po-hero__image figcaption{position:absolute;left:0;bottom:0;padding:21px 25px;background:rgba(247,247,244,.94);display:grid;gap:6px;min-width:215px}
.po-hero__image figcaption span,.po-work figcaption p{font:500 9px Jura,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--po-muted)}
.po-hero__image figcaption b{font:400 15px "Noto Sans KR",sans-serif}
.po-hero__note{position:absolute;left:1.6vw;top:50%;margin:0;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;font:500 9px Jura,Arial,sans-serif;letter-spacing:.24em}
.po-intro{padding:92px 8vw;border-bottom:1px solid var(--po-line)}
.po-intro__grid{margin-top:55px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:start}
.po-intro h2,.po-works h2,.po-process h2{font-size:clamp(46px,5.4vw,82px);line-height:1;margin:0}
.po-intro__grid>div{padding-top:7px;color:var(--po-muted);font:300 14px/1.9 "Noto Sans KR",sans-serif}
.po-intro__grid>div p{margin:0 0 18px}
.po-capabilities{margin-top:58px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--po-line)}
.po-capabilities article{min-height:180px;padding:25px 32px 22px 0;border-right:1px solid var(--po-line)}
.po-capabilities article+article{padding-left:32px}.po-capabilities article:last-child{border-right:0}
.po-capabilities span{color:var(--po-red);font-size:12px}.po-capabilities h3{margin:38px 0 12px;font:300 20px "Noto Sans KR",sans-serif}.po-capabilities p{margin:0;color:var(--po-muted);font:300 12px/1.7 "Noto Sans KR",sans-serif}
.po-works{padding:92px 4.5vw;background:#ece8df}
.po-works__head{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end;margin-bottom:44px}
.po-works__head h2{margin-top:30px}.po-works__head>p{max-width:430px;margin:0 0 5px;color:var(--po-muted);font:300 13px/1.85 "Noto Sans KR",sans-serif}
.po-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.po-grid__column{display:flex;min-width:0;flex-direction:column;gap:34px}
.po-work,.po-work--wide,.po-work--portrait{display:block;width:100%;margin:0;min-width:0}
.po-work>div{aspect-ratio:4/3;overflow:hidden;background:#d5d0c6}.po-work--wide>div{aspect-ratio:16/10}.po-work--portrait>div{aspect-ratio:3/4}
.po-work img{width:100%;height:100%;object-fit:cover;filter:saturate(.67);transition:transform .7s ease,filter .5s ease}.po-work--portrait img{object-position:center}
.po-work:hover img{transform:scale(1.018);filter:saturate(.9)}
.po-work figcaption{display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--po-line)}
.po-work figcaption span{font:500 9px Jura;color:var(--po-red)}.po-work figcaption p{margin:0}.po-work figcaption b{font:400 12px "Noto Sans KR",sans-serif}
.po-process{padding:92px 8vw;display:grid;grid-template-columns:.82fr 1.18fr;gap:10vw;border-bottom:1px solid var(--po-line)}
.po-process__title>p:last-child{max-width:420px;color:var(--po-muted);font:300 13px/1.85 "Noto Sans KR",sans-serif}
.po-process__title h2{margin:38px 0 35px}
.po-process ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--po-line)}
.po-process li{display:grid;grid-template-columns:62px 1fr;padding:24px 0;border-bottom:1px solid var(--po-line)}
.po-process li>span{color:var(--po-red);font:500 10px Jura}.po-process h3{font:300 18px "Noto Sans KR",sans-serif;margin:0 0 9px}.po-process li p{margin:0;color:var(--po-muted);font:300 12px/1.7 "Noto Sans KR",sans-serif}
.po-contact{border-top:0}.po-contact .contact-intro>p{color:#a9aaa5}
@media(max-width:1120px) and (min-width:801px){.po-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){
  .po-hero{height:auto;min-height:auto;padding:0;display:flex;flex-direction:column;overflow:hidden}
  .po-hero__copy{min-width:0;padding:46px 20px 38px}.po-hero h1{font-size:clamp(48px,14.5vw,66px);line-height:.92;margin:24px 0}.po-hero__copy>p:not(.po-label){max-width:100%;padding-right:4px;font-size:12px;line-height:1.7;margin-bottom:28px;overflow-wrap:anywhere}
  .po-hero__image{min-height:0;height:102vw;max-height:560px;order:2}.po-hero__image img{object-position:center 36%}.po-hero__note{display:none}
  .po-intro,.po-process{padding:54px 20px}.po-intro__grid,.po-process{display:block}.po-intro h2,.po-works h2,.po-process h2{font-size:38px}.po-intro__grid>div{margin-top:26px;font-size:13px}
  .po-capabilities{margin-top:55px;display:block}.po-capabilities article,.po-capabilities article+article{min-height:0;padding:24px 0;border-right:0;border-bottom:1px solid var(--po-line)}.po-capabilities h3{margin:30px 0 10px}
  .po-works{padding:54px 12px}.po-works__head{display:block;margin:0 10px 30px}.po-works__head>p{margin-top:20px}
  .po-grid{display:grid;grid-template-columns:none;grid-template-rows:1fr;grid-auto-flow:column;grid-auto-columns:88%;gap:12px;overflow-x:auto;overflow-y:hidden;padding:0 10px 12px;scroll-snap-type:x mandatory;scroll-padding-left:10px;scrollbar-width:none}.po-grid::-webkit-scrollbar{display:none}.po-grid__column{display:contents}.po-work{scroll-snap-align:start}.po-work>div,.po-work--wide>div,.po-work--portrait>div{aspect-ratio:4/3}.po-work figcaption{grid-template-columns:28px 1fr;min-height:72px}.po-work figcaption b{grid-column:2}
  .po-process ol{margin-top:50px}.po-process li{grid-template-columns:45px 1fr}
}
@media(prefers-reduced-motion:reduce){.po-work img{transition:none}}

/* Interactive archive: filters and focus stay inside the page. */
.po-gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 32px;padding:15px 0;border-top:1px solid var(--po-line);border-bottom:1px solid var(--po-line)}
.po-filters{display:flex;flex-wrap:wrap;gap:7px}
.po-filters button{padding:10px 13px;border:1px solid transparent;background:transparent;color:var(--po-muted);font:500 9px Jura,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:color .25s,border-color .25s,background .25s}
.po-filters button:hover{color:var(--po-ink);border-color:var(--po-line)}
.po-filters button.is-active{color:#fff;background:var(--po-ink);border-color:var(--po-ink)}
.po-gallery-count{margin:0;white-space:nowrap;color:var(--po-muted);font:500 9px Jura,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.po-gallery-count span{color:var(--po-red);margin-right:5px}
.po-grid{transition:opacity .22s ease}
.po-grid.is-filtering{opacity:.18}
.po-work{position:relative;outline:none;transition:opacity .32s ease,transform .32s ease}
.po-work>div{position:relative}
.po-work>div:before{content:'';position:absolute;z-index:2;left:0;bottom:0;width:0;height:3px;background:var(--po-red);transition:width .42s ease}
.po-work:hover>div:before,.po-work:focus-visible>div:before{width:100%}
.po-work:hover img,.po-work:focus-visible img{transform:none;filter:saturate(1)}
.po-grid.is-exploring .po-work:not(.is-active){opacity:.48}
.po-work:hover figcaption,.po-work:focus-visible figcaption{padding-left:10px}
.po-work figcaption{transition:padding .3s ease}
.po-work:focus-visible{box-shadow:0 0 0 2px var(--po-red)}
@media(max-width:800px){
  .po-gallery-tools{display:block;margin:0 10px 24px;padding:12px 0}
  .po-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}
  .po-filters::-webkit-scrollbar{display:none}
  .po-filters button{flex:0 0 auto}
  .po-gallery-count{margin-top:10px}
  .po-grid.is-exploring .po-work:not(.is-active){opacity:1}
}
@media(prefers-reduced-motion:reduce){.po-grid,.po-work,.po-work>div:before{transition:none}}
