/* Photo-led venue overview, matching the wedding portfolio typography. */
.elementor .kp-venue-index-grid>.e-con-inner{display:flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:30px 24px!important}
.elementor .kp-venue-index-grid .kp-venue-card{flex:0 1 calc(50% - 12px);width:calc(50% - 12px);min-width:0;padding:0!important;border:none;background:transparent;gap:0}
.elementor .kp-venue-index-grid .kp-venue-card>.e-con-inner{padding:0;gap:0;width:100%}
.elementor .kp-venue-index-grid .elementor-widget-image{width:100%;margin:0}
.elementor .kp-venue-index-grid .elementor-widget-image a{display:block}
.elementor .kp-venue-index-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.elementor .kp-venue-index-caption{width:100%;align-items:flex-start;gap:15px}
.elementor .kp-venue-index-name .elementor-heading-title{font-family:'Cormorant Garamond',serif!important;font-size:38px!important;font-weight:400!important;text-transform:none!important;line-height:1.12!important}
.elementor .kp-venue-index-name a{color:inherit}
.elementor .kp-venue-story .elementor-widget-text-editor{max-width:920px}
.elementor .kp-venue-story p{margin-bottom:1.1em}
.elementor .kp-venue-details .kp-venue-official-button{margin:6px 0 8px}
.elementor .kp-venue-official-button .elementor-button{min-height:50px;padding:16px 25px;line-height:1.4;color:#fff!important;background:#69503f}
.elementor .kp-venue-official-button .elementor-button:hover{background:#493a2f}
.elementor .kp-venue-official-button a:focus-visible,.elementor .kp-venue-index-grid a:focus-visible{outline:2px solid #69503f;outline-offset:5px}
/* A complete final row at every size, without duplicate filler photos. */
.elementor .kp-venue-photo-grid.kp-venue-cols-3>.e-con-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
.elementor .kp-venue-photo-grid.kp-venue-cols-2>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
.elementor .kp-venue-photo-grid.kp-venue-cols-1>.e-con-inner{grid-template-columns:1fr}
.elementor .kp-venue-photo-grid img{aspect-ratio:3/2;object-fit:cover}
/* Larger wedding references, centred even when the last row has fewer cards. */
.elementor .kp-venue-case-grid{display:flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:30px!important}
.elementor .kp-venue-case-grid .kp-venue-case-card{flex:0 1 340px;width:340px;max-width:100%;align-items:center;text-align:center}
.elementor .kp-venue-case-photo{width:100%}
.elementor .kp-venue-case-name{width:100%;text-align:center}
.elementor .kp-venue-case-name .elementor-heading-title{font-size:32px!important;text-align:center}
.elementor .kp-venue-cases>.e-con-inner>.elementor-widget-heading{text-align:center}
@media(max-width:767px){
 .elementor .kp-venue-index-grid .kp-venue-card{flex-basis:100%;width:100%}
 .elementor .kp-venue-index-name .elementor-heading-title{font-size:32px!important}
 .elementor .kp-venue-photo-grid>.e-con-inner{grid-template-columns:1fr!important}
 .elementor .kp-venue-case-grid .kp-venue-case-card{flex-basis:100%;width:100%;max-width:420px}
 .elementor .kp-venue-case-name .elementor-heading-title{font-size:30px!important}
 .elementor .kp-venue-official-button{width:100%}
 .elementor .kp-venue-official-button .elementor-button{display:block;width:100%}
}
