/* Separate portfolio page previews; keep each photograph's composition intact. */
.portfolio-page .portfolio-intro { padding-block: 50px 45px; }
.portfolio-page h1 { font-size: clamp(43px, 6vw, 80px); }
.portfolio-page .portfolio-intro p:not(.eyebrow) { margin-top: 24px; }
.portfolio-page .portfolio-intro .text-link { margin-top: 22px; }
.portfolio-page .portfolio-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 55px 45px; }
.portfolio-page .portfolio-grid figure:nth-child(5n + 1) { grid-column: 1 / -1; }
.family-portfolio .portfolio-grid .featured-family-photo { grid-column: 1 / -1; }
.portfolio-page .portfolio-next { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 55px; padding-block: 45px; border-top: 1px solid var(--line); }
.portfolio-page .portfolio-next h2 { font-size: clamp(32px, 4vw, 48px); }
.wedding-portfolio-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 40px; }
.available-wedding-photo { grid-column: 1 / -1; width: min(708px, 100%); margin-inline: auto; }
.wedding-portfolio .wedding-portfolio-grid { max-width: 960px; }
.wedding-portfolio .wedding-photo { width: 100%; max-width: var(--image-limit); margin-inline: auto; }
.wedding-portfolio .wedding-photo--paired { grid-column: 1 / -1; }
.wedding-portfolio .wedding-photo img { display: block; width: 100%; height: auto; }
.wedding-photo-placeholder { display: grid; place-items: center; aspect-ratio: 3 / 2; border: 1px dashed #bda898; background: #f2e4d8; color: #61554c; font-size: 16px; }
@media (max-width: 600px) {
 .portfolio-page .portfolio-intro { padding-block: 30px; }
 .portfolio-page .portfolio-grid { grid-template-columns: 1fr; gap: 28px; }
 .portfolio-page .portfolio-grid figure:nth-child(5n + 1) { grid-column: auto; }
 .portfolio-page .portfolio-next { flex-direction: column; align-items: flex-start; margin-top: 35px; padding-block: 35px; }
 .wedding-portfolio-grid { grid-template-columns: 1fr; gap: 28px; }
}
