/* Curated event photography: keep faces and finished photo borders intact. */
.hero-grid>div{min-width:0}.photo-frame{margin:0;background:#fff;border:1px solid #dce2e7;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #12213109}.photo-frame>a{display:block}.photo-frame img{display:block;width:100%;height:auto;aspect-ratio:1.502/1;object-fit:contain;background:#fff}.photo-frame figcaption{padding:13px 18px;color:#435367;font-size:13px;line-height:1.45;font-weight:650}.photo-showcase{transform:rotate(1deg)}.photo-showcase .photo-frame{box-shadow:14px 18px 0 #dce7f2}.photo-showcase .photo-frame img{border-radius:0}.photo-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start}.photo-collage .photo-frame:first-child{grid-column:1/-1;transform:rotate(-1deg)}.photo-collage .photo-frame:nth-child(2){transform:rotate(1.5deg)}.photo-collage .photo-frame:nth-child(3){transform:rotate(-1deg)}.photo-collage figcaption{font-size:12px;padding:10px 14px}.photo-collage .photo-frame:first-child figcaption{font-size:14px}.photo-story{background:#f6f6f0}.photo-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.photo-story-grid:has(>.photo-frame:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.photo-story .photo-frame{transition:box-shadow .2s}.photo-story .photo-frame:has(a):hover{box-shadow:0 12px 30px #12213120}.photo-story .photo-frame:has(a) figcaption{color:#2860cb}.cards .card img{height:auto;aspect-ratio:1.502/1;object-fit:contain;background:#fff}.event-proof-card>img{aspect-ratio:1.502/1}.photo-story [id],#celebrations{scroll-margin-top:105px}@media(max-width:900px){.photo-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-showcase{max-width:700px;margin:0 auto;transform:none}.photo-collage{max-width:700px;margin:0 auto}}@media(max-width:650px){.photo-story-grid,.photo-story-grid:has(>.photo-frame:nth-child(2):last-child){grid-template-columns:1fr}.photo-collage{gap:12px}.photo-collage figcaption{padding:9px 10px;font-size:11px}.photo-showcase .photo-frame{box-shadow:7px 10px 0 #dce7f2}.photo-frame figcaption{padding:12px 16px}.photo-story-grid{gap:20px}.photo-collage .photo-frame{transform:none!important}}
@media(min-width:901px){body:not(.landing) .hero{padding:36px 0 48px}body:not(.landing) .hero-grid{align-items:start}}
.photo-frame figcaption a{display:block;text-decoration:none;color:inherit}.photo-frame figcaption a:hover{text-decoration:underline;text-underline-offset:3px}
