/* NINEWORKS — portfolio case studies + single-image archive */
.portfolio-page .portfolio-index-head{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--nw-pad,var(--gutter));
  align-items:end;
  padding-top:clamp(52px,4.5vw,78px);
  padding-bottom:clamp(38px,3.6vw,58px);
  border-bottom:1px solid rgba(17,17,17,.16);
}
.portfolio-index-head__title{grid-column:1/span 5}
.portfolio-index-head__meta{grid-column:7/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;max-width:760px}
.portfolio-index-head h2{margin:0;max-width:12ch;font-size:clamp(34px,3vw,52px);font-weight:500;line-height:1.02;letter-spacing:-.055em}
.portfolio-index-head__meta p{margin:0;color:#444;font-size:15.5px;line-height:1.78;word-break:keep-all}
.portfolio-index-head__count{color:#888;font-size:12.5px;letter-spacing:.055em;white-space:nowrap}

.portfolio-card--archive .portfolio-card__link{cursor:zoom-in}
.portfolio-card--archive .portfolio-card__media{position:relative}
.portfolio-card--archive .portfolio-card__media::after{
  position:absolute;right:14px;bottom:14px;padding:6px 9px;border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(10,10,10,.42);backdrop-filter:blur(8px);font-size:9px;line-height:1;letter-spacing:.07em;content:'QUICK VIEW';opacity:0;transform:translateY(5px);transition:opacity .2s ease,transform .25s ease
}
.portfolio-card--archive:hover .portfolio-card__media::after{opacity:1;transform:translateY(0)}
.portfolio-card--archive .portfolio-card__scope{text-transform:uppercase;letter-spacing:.045em}

.portfolio-quickview{
  position:fixed;z-index:500;inset:0;display:grid;visibility:hidden;grid-template-rows:auto 1fr auto;color:#111;background:rgba(242,242,240,.97);opacity:0;transition:opacity .28s ease,visibility 0s linear .28s
}
.portfolio-quickview.is-open{visibility:visible;opacity:1;transition-delay:0s}
.portfolio-quickview__head,.portfolio-quickview__foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px var(--nw-pad,var(--gutter));border-bottom:1px solid rgba(17,17,17,.18)}
.portfolio-quickview__foot{border-top:1px solid rgba(17,17,17,.18);border-bottom:0}
.portfolio-quickview__label{color:#777;font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.portfolio-quickview__close{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.04em}
.portfolio-quickview__close::after{font-size:18px;content:'×'}
.portfolio-quickview__stage{display:grid;min-height:0;padding:clamp(20px,2.5vw,42px) var(--nw-pad,var(--gutter));place-items:center;overflow:auto}
.portfolio-quickview__stage img{display:block;width:auto;max-width:min(1180px,94vw);height:auto;max-height:76vh;object-fit:contain;box-shadow:0 12px 40px rgba(0,0,0,.06)}
.portfolio-quickview__title{margin:0;font-size:clamp(16px,1.25vw,21px);font-weight:500;letter-spacing:-.03em}
.portfolio-quickview__category{color:#777;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
body.is-portfolio-quickview-open{overflow:hidden}

@media(max-width:760px){
  .portfolio-page .portfolio-index-head{grid-template-columns:1fr;gap:24px;padding-top:38px;padding-bottom:34px}
  .portfolio-index-head__title,.portfolio-index-head__meta{grid-column:1}
  .portfolio-index-head__meta{grid-template-columns:1fr;gap:12px}
  .portfolio-index-head__meta p{font-size:15px}
  .portfolio-index-head h2{font-size:clamp(34px,10vw,44px)}
  .portfolio-card--archive .portfolio-card__media::after{opacity:1;transform:none}
  .portfolio-quickview__head,.portfolio-quickview__foot{padding:15px 18px}
  .portfolio-quickview__stage{padding:18px}
  .portfolio-quickview__stage img{max-width:100%;max-height:72vh}
  .portfolio-quickview__foot{align-items:flex-start;flex-direction:column;gap:4px}
}
