.portfolio{background:#f5f0e6}
.portfolio-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem 6vw;align-items:end;margin-bottom:4rem}
.portfolio-intro .kicker{grid-column:1/-1;margin-bottom:0}
.portfolio-intro h2,.reviews-heading h2{font:400 clamp(3.2rem,6vw,6.7rem)/.9 "Archivo Black",sans-serif;letter-spacing:-.065em;text-transform:uppercase;margin:0}
.portfolio-intro>p:last-child{font-size:1.1rem;max-width:36rem;margin:0}
.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:16rem;gap:.8rem}
.portfolio-grid figure{grid-column:span 4;grid-row:span 2;position:relative;overflow:hidden;margin:0;background:#0b0b0b}
.portfolio-grid .portfolio-wide{grid-column:span 8}
.portfolio-grid .portfolio-tall{grid-row:span 3}
.portfolio-grid img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease}
.portfolio-grid figure:hover img{transform:scale(1.025);filter:saturate(1.04)}
.portfolio-grid figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:3.5rem 1.25rem 1.15rem;color:white;background:linear-gradient(transparent,#000c)}
.portfolio-grid figcaption span{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.portfolio-grid figcaption strong{font-size:1rem;text-align:right}
.reviews-heading{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:end;margin-bottom:3rem}
.reviews-heading h2{font-size:clamp(3rem,5vw,5.8rem);max-width:850px}
.review-score{display:flex;align-items:center;gap:1rem;border:1px solid #ffffff80;padding:1rem 1.25rem;white-space:nowrap}
.review-score strong{font:400 3rem/1 "Archivo Black",sans-serif}
.review-score span{color:#b9f419;line-height:1.2}
.review-score small{display:block;color:white;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}
.review-link{display:inline-block;margin-top:2rem;border-bottom:1px solid white;padding-bottom:.25rem;font-weight:700}
@media(max-width:850px){.portfolio-intro,.reviews-heading{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:17rem}.portfolio-grid figure,.portfolio-grid .portfolio-wide{grid-column:span 1}.portfolio-grid .portfolio-tall{grid-row:span 2}.review-score{width:max-content}}
@media(max-width:560px){.portfolio-grid{grid-template-columns:1fr;grid-auto-rows:25rem}.portfolio-grid figure,.portfolio-grid .portfolio-wide,.portfolio-grid .portfolio-tall{grid-column:1;grid-row:span 1}.portfolio-grid figcaption{padding-top:4.5rem}.reviews-heading h2,.portfolio-intro h2{font-size:3rem}}
