/* Портфолио: вкладки-категории, сетка фото, просмотр кадра (app/blocks/portfolio.php) */
.pf{margin-top:var(--round-gap,72px)}
.pf-head p{max-width:640px;margin:14px 0 0;color:#AEB8C0;font-size:16px;line-height:1.55}
.pf-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 24px}
.pf-tabs button{font:inherit;font-size:14px;line-height:1;padding:11px 16px;border-radius:999px;border:1px solid rgba(220,197,148,.28);background:transparent;color:#DDE3E8;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.pf-tabs button span{color:#8C98A2;margin-left:4px;font-size:12px}
.pf-tabs button:hover{border-color:rgba(220,197,148,.7)}
.pf-tabs button[aria-selected=true]{background:#DCC594;border-color:#DCC594;color:#1B1E21}
.pf-tabs button[aria-selected=true] span{color:#5B4C2E}
.pf-tabs button:focus-visible,.pf-open:focus-visible{outline:2px solid #DCC594;outline-offset:3px}
.pf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px}
.pf-card{margin:0;min-width:0}
.pf-card[hidden]{display:none}
.pf-open{display:block;width:100%;padding:0;border:0;background:#262A2E;border-radius:var(--round-radius,6px);overflow:hidden;cursor:zoom-in;aspect-ratio:4/5}
.pf-open img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.pf-open:hover img{transform:scale(1.035)}
.pf-card figcaption{margin-top:12px}
.pf-card strong{display:block;font-size:15px;font-weight:550;letter-spacing:-.015em;line-height:1.3;color:#EBEFF2}
.pf-card figcaption span{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:#929FA9}
.pf-view{border:0;padding:0;background:transparent;max-width:min(1100px,94vw);max-height:92vh;overflow:visible}
.pf-view::backdrop{background:rgba(10,12,14,.88)}
.pf-view figure{margin:0}
.pf-view img{display:block;max-width:min(1100px,94vw);max-height:80vh;width:auto;height:auto;margin:auto;border-radius:6px}
.pf-view figcaption{margin-top:12px;text-align:center;color:#DDE3E8;font-size:15px}
.pf-close,.pf-nav{position:fixed;border:0;background:rgba(27,30,33,.75);color:#F4F5F6;width:46px;height:46px;border-radius:50%;font-size:28px;line-height:1;cursor:pointer}
.pf-close{top:18px;right:18px}
.pf-nav{top:50%;transform:translateY(-50%)}
.pf-prev{left:14px}.pf-next{right:14px}
@media(max-width:1023px){.pf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){
  .pf-tabs{flex-wrap:nowrap;overflow-x:auto;margin-inline:-24px;padding:0 24px 4px;scrollbar-width:none}
  .pf-tabs::-webkit-scrollbar{display:none}
  .pf-tabs button{flex:0 0 auto}
  .pf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
  .pf-card strong{font-size:14px}
  .pf-nav{width:40px;height:40px;font-size:24px}
}
@media(prefers-reduced-motion:reduce){.pf-open img{transition:none}}
