.portfolio-nav, .portfolio-actions { display:flex; flex-wrap:wrap; gap:1rem; }
.portfolio-nav { justify-content:center; padding-bottom:2rem; }
.portfolio-nav a { padding:.75rem 1rem; border:1px solid var(--color-border); border-radius:999px; text-decoration:underline; text-underline-offset:.25em; }
.portfolio-workshop .portfolio-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:0; overflow:hidden; }
.portfolio-workshop .portfolio-card__media { aspect-ratio:auto; margin:0; border:0; min-width:0; }
.portfolio-workshop .portfolio-card__media img { height:auto; }
.portfolio-workshop .card__body { min-width:0; padding:clamp(1.5rem, 3vw, 2.5rem); }
.portfolio-workshop .card__title { line-height:1.25; }
.portfolio-facts { margin-bottom:1.5rem; }
.portfolio-facts div { margin-bottom:1rem; }
.portfolio-facts dt { font-weight:700; margin-bottom:.25rem; }
.portfolio-facts dd { margin:0; color:var(--color-text-light); }
.portfolio-download { font-size:.875rem; }
.portfolio-more { margin-top:2rem; }
.portfolio-more summary { cursor:pointer; padding:1rem; border:1px solid var(--color-border); border-radius:12px; font-weight:600; }
.portfolio-more[open] summary { margin-bottom:1.5rem; }
.portfolio-more .fade-in { opacity:1; transform:none; }
.portfolio-strategy { display:grid; grid-template-columns:1fr 1fr; gap:2.5rem; align-items:start; }
.portfolio-strategy img { width:100%; height:auto; border-radius:16px; }
.portfolio-strategy figcaption { font-size:.875rem; margin-top:.75rem; color:var(--color-text-light); }
.portfolio-strategy h3 { margin:1rem 0 .5rem; }
.portfolio-strategy h3:first-child { margin-top:0; }
.portfolio-upcoming .portfolio-grid { display:block; max-width:760px; margin:auto; }
.portfolio-upcoming .portfolio-card { display:grid; grid-template-columns:120px 1fr; }
.portfolio-upcoming .portfolio-card__media { aspect-ratio:auto; }
.portfolio-enquiry { max-width:900px; text-align:center; }
.portfolio-actions { justify-content:center; margin-top:1.5rem; }
.portfolio-actions .btn { white-space:normal; min-height:48px; }
.portfolio-actions .btn--primary { background:var(--color-forest-ink); border-color:var(--color-forest-ink); }
@media(max-width:700px) {
 .portfolio-workshop .portfolio-card, .portfolio-strategy, .portfolio-upcoming .portfolio-card { grid-template-columns:1fr; }
 .portfolio-upcoming .portfolio-card__media { display:none; }
 .portfolio-actions { flex-direction:column; }
}
