/* Portfolio cards */
.ma-real-weddings-widget { width: 100%; margin-top: 54px; }
.ma-wedding-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(30px, 5vw, 68px) 28px; }
.ma-wedding-card { margin: 0; }
.ma-wedding-cover { position: relative; display: block; overflow: hidden; background: #ded7ce; }
.ma-wedding-cover::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.3); pointer-events: none; }
.ma-wedding-cover img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; transition: transform .7s cubic-bezier(.2,.65,.35,1); }
.ma-wedding-card:nth-child(4n+2) .ma-wedding-cover img,
.ma-wedding-card:nth-child(4n+3) .ma-wedding-cover img { aspect-ratio: 5 / 4; }
.ma-wedding-card:hover .ma-wedding-cover img { transform: scale(1.025); }
.ma-wedding-card-copy { padding: 22px 0 0; }
.ma-wedding-meta { margin: 0 0 8px; color: #b76f45; font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.ma-wedding-card h3 { margin: 0 0 11px; color: #17130f; font: 400 clamp(30px, 3.6vw, 48px)/1 "Cormorant Garamond", serif; }
.ma-wedding-link { color: #4f4841; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.ma-wedding-link:hover { color: #b76f45; }

/* Single Real Wedding */
.ma-real-wedding-single { overflow: hidden; background: #fffdf9; }
.ma-real-hero { position: relative; min-height: min(900px, 100vh); display: flex; align-items: flex-end; padding: 150px max(24px, calc((100vw - 1240px) / 2)) 75px; color: #fff; background: #080706; }
.ma-real-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .78; }
.ma-real-hero-shade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.76), transparent 65%); }
.ma-real-hero-copy { position: relative; z-index: 2; }
.ma-real-hero-copy p, .ma-real-kicker { margin: 0 0 15px; color: #d99168; font-size: 10px; font-weight: 600; letter-spacing: .19em; text-transform: uppercase; }
.ma-real-hero-copy h1 { max-width: 900px; margin: 0 0 16px; font: 400 clamp(58px, 9vw, 128px)/.86 "Cormorant Garamond", serif; letter-spacing: -.04em; }
.ma-real-hero-copy span { font-size: 12px; letter-spacing: .13em; text-transform: uppercase; }
.ma-real-intro { width: min(880px, calc(100% - 48px)); margin: 0 auto; padding: clamp(76px, 10vw, 140px) 0; text-align: center; }
.ma-real-intro h2 { margin: 0 auto 30px; font: 400 clamp(36px, 5vw, 68px)/1.03 "Cormorant Garamond", serif; }
.ma-real-content { color: #726a62; font-size: 17px; }
.ma-real-gallery { width: min(1440px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(12px, 2vw, 28px); }
.ma-real-gallery-item { margin: 0; overflow: hidden; background: #e7e0d8; }
.ma-real-gallery-item img { width: 100%; height: 100%; min-height: 500px; max-height: 850px; object-fit: cover; }
.ma-real-gallery-item.is-wide { grid-column: 1 / -1; }
.ma-real-gallery-item.is-wide img { width: 100%; max-height: 900px; aspect-ratio: 16 / 10; }
.ma-real-empty { width: min(800px, calc(100% - 48px)); margin: 0 auto 110px; padding: 30px; border: 1px solid rgba(23,19,15,.14); text-align: center; }
.ma-real-next { margin-top: clamp(80px, 10vw, 150px); padding: clamp(76px, 10vw, 130px) 24px; text-align: center; color: #fff; background: #0b0a09; }
.ma-real-next p { margin: 0 0 14px; color: #d99168; font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.ma-real-next h2 { margin: 0 auto 36px; font: 400 clamp(42px, 6vw, 78px)/1 "Cormorant Garamond", serif; }

@media (max-width: 767px) {
  .ma-wedding-grid, .ma-real-gallery { grid-template-columns: 1fr; }
  .ma-wedding-card:nth-child(n) .ma-wedding-cover img { aspect-ratio: 4 / 5; }
  .ma-real-gallery-item.is-wide { grid-column: auto; }
  .ma-real-gallery-item img, .ma-real-gallery-item.is-wide img { min-height: 0; max-height: none; aspect-ratio: auto; }
  .ma-real-hero { min-height: 760px; }
}
