/* Open gallery, two columns at most; artworks keep their original proportions. */
.portfolio-page .portfolio-section { padding-top: 65px; }
.portfolio-page .portfolio-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 50px 34px; }
.portfolio-page .portfolio-card { min-width: 0; border: 0; padding: 0; background: transparent; }
.portfolio-page .portfolio-card > a { display: block; height: 100%; }
.portfolio-page .portfolio-image > img { height: clamp(300px,33vw,490px); width: 100%; object-fit: cover; }
.portfolio-page .portfolio-card[data-category="Sztuka"] .portfolio-image > img { object-fit: contain; padding: 30px; }
.portfolio-page .card-meta { min-height: 145px; padding: 26px 16px 20px; }
.portfolio-page .card-meta h2 { font-size: clamp(23px,2vw,30px); line-height: 1.4; }
.portfolio-logo-overlay { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(42,30,43,.62); opacity: 0; transition: opacity .45s; }
.portfolio-logo-overlay .aziza-logo { width: 220px; height: 98px; transform: translateY(12px); transition: transform .45s; }
.portfolio-logo-overlay .aziza-logo img { filter: none; }
.portfolio-page .portfolio-image .portfolio-logo-overlay img { width: 179.021%; height: auto; padding: 0; object-fit: initial; transform: none; }
.portfolio-card:has(> a:focus-visible) .portfolio-logo-overlay { opacity: 1; }
.portfolio-card:has(> a:focus-visible) .portfolio-logo-overlay .aziza-logo { transform: translateY(0); }
@media(hover:hover) {
  .portfolio-card:hover .portfolio-logo-overlay { opacity: 1; }
  .portfolio-card:hover .portfolio-logo-overlay .aziza-logo { transform: translateY(0); }
}
.portfolio-card > a:focus-visible { outline: 2px solid var(--slate); outline-offset: 5px; }
@media(max-width:760px) {
  .portfolio-page .portfolio-grid { grid-template-columns: 1fr; gap: 30px; }
  .portfolio-page .portfolio-card { padding: 0; }
  .portfolio-page .portfolio-image > img { height: 370px; }
  .portfolio-page .card-meta { min-height: 0; padding: 22px 12px; }
      }
@media(prefers-reduced-motion:reduce) { .portfolio-page .portfolio-card,.portfolio-logo-overlay,.portfolio-logo-overlay .aziza-logo { transition: none; } }

.gallery-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 25px; margin-bottom: 45px; }
.gallery-heading h2 { font-size: clamp(28px,3vw,42px); margin: 0; }
.gallery-heading p { color: var(--truffle); font-size: 13px; margin: 0; white-space: nowrap; }
@media(max-width:760px) { .gallery-heading { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 30px; } }
