.casa-venue-gallery{padding-top:22px;padding-bottom:62px}
.casa-venue-gallery [hidden]{display:none!important}
.cvg-heading{margin-bottom:27px}
.cvg-heading h2{margin:0;font:400 31px/1.35 var(--serif);color:var(--wine)}
.cvg-venues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.cvg-venue{display:block;position:relative;min-width:0;padding:7px;border:1px solid var(--rule);background:none;color:var(--wine);text-align:left;cursor:pointer}
.cvg-venue[aria-selected=true]{border-color:var(--wine);outline:1px solid var(--wine);outline-offset:4px}
.cvg-venue-cover{display:block;aspect-ratio:16/8;overflow:hidden;background:var(--panel)}
.cvg-venue-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.cvg-cover-mark{display:flex;height:100%;align-items:center;justify-content:center;font:italic 35px/1.3 var(--serif);opacity:.55}
.cvg-venue-copy{display:block;position:relative;padding:21px 52px 19px 16px}
.cvg-venue-name{display:block;font:400 36px/1.2 var(--serif)}
.cvg-venue-address{display:block;margin-top:10px;font:12px/1.75 var(--sans);color:var(--soft)}
.cvg-venue-count{display:block;margin-top:8px;font:11px/1.5 var(--sans);letter-spacing:.07em;color:var(--soft)}
.cvg-venue-arrow{position:absolute;right:16px;top:25px;font:24px/1 var(--serif)}
.cvg-venue[aria-selected=true] .cvg-venue-name{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px}
.cvg-panel{margin-top:50px;outline:none}
.cvg-panel:focus-visible{outline:2px solid var(--wine);outline-offset:8px}
.cvg-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:26px;margin-bottom:25px}
.cvg-panel-heading h3{font:400 36px/1.2 var(--serif);margin:0}
.cvg-panel-heading p{font:11px/1.7 var(--sans);color:var(--soft);margin:11px 0 0}
.cvg-venue-link{margin-bottom:4px;flex:none}
.cvg-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:12px 0;margin-bottom:28px}
.cvg-filters{display:flex;flex-wrap:wrap;gap:25px}
.cvg-filters button{min-height:44px;padding:7px 0;border:0;border-bottom:1px solid transparent;background:none;color:var(--soft);font:10px/1.5 var(--sans);letter-spacing:.045em;cursor:pointer}
.cvg-filters button:disabled{opacity:.4;cursor:default}
.cvg-filters button[aria-pressed=true]{border-bottom-color:var(--wine);color:var(--wine)}
.cvg-count{margin:0;font:10px/1.6 var(--sans);color:var(--soft);white-space:nowrap}
.cvg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 24px;align-items:start}
.cvg-photo{margin:0;min-width:0;padding:7px;border:1px solid var(--rule);background:transparent}
.cvg-photo-media{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;border:0;padding:0;background:var(--panel);color:var(--wine);cursor:zoom-in}
.cvg-photo-media img,.cvg-photo-media svg{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.cvg-photo figcaption{display:flex;justify-content:space-between;align-items:start;gap:12px;min-height:73px;padding:13px 5px 6px}
.cvg-photo-venue{display:block;font:9px/1.45 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--wine)}
.cvg-photo-caption{display:block;margin-top:7px;font:italic 14px/1.5 var(--serif);color:var(--soft)}
.cvg-photo-more{flex:none;font:18px/1.3 var(--serif);color:var(--wine)}
.cvg-empty{margin:0;padding:40px 20px;border:1px solid var(--rule);font:16px/1.75 var(--serif);color:var(--soft);text-align:center}
.cvg-venue:focus-visible,.cvg-filters button:focus-visible,.cvg-photo-media:focus-visible{outline:2px solid var(--wine);outline-offset:4px}
@media(prefers-reduced-motion:no-preference){.cvg-venue-cover img,.cvg-photo-media img{transition:transform .4s ease}.cvg-venue:hover .cvg-venue-cover img,.cvg-photo-media:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.cvg-venues{gap:22px}.cvg-venue-copy{padding-left:12px}.cvg-venue-name{font-size:32px}.cvg-grid{gap:22px 17px}.cvg-photo-caption{font-size:13px}}
@media(max-width:720px){
 .casa-venue-gallery{padding-top:15px;padding-bottom:40px}
 .cvg-heading{margin-bottom:23px}.cvg-heading h2{font-size:25px;line-height:1.45}
 .cvg-venues{gap:15px}.cvg-venue{padding:4px}.cvg-venue-cover{aspect-ratio:4/3}
 .cvg-venue-copy{padding:16px 9px 13px}.cvg-venue-name{font-size:25px;overflow-wrap:anywhere}
 .cvg-venue-address{font-size:11px;line-height:1.7;margin-top:9px}.cvg-venue-count{font-size:10px;letter-spacing:.025em;margin-top:8px}
 .cvg-venue-arrow{display:none}.cvg-cover-mark{font-size:23px}
 .cvg-panel{margin-top:36px}.cvg-panel-heading{align-items:start;gap:16px;margin-bottom:21px}.cvg-panel-heading h3{font-size:29px}
 .cvg-panel-heading p{font-size:11px;line-height:1.7;margin-top:9px}.cvg-venue-link{font-size:10px;margin-top:8px;gap:11px;line-height:1.6}
 .cvg-toolbar{flex-wrap:wrap;gap:8px 12px;padding:10px 0;margin-bottom:22px}.cvg-filters{gap:18px;max-width:100%;min-width:0}.cvg-filters button{font-size:11px;letter-spacing:0;padding:8px 0}.cvg-count{font-size:10px;max-width:100%}
 .cvg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.cvg-photo{padding:4px}
 .cvg-photo figcaption{padding:10px 3px 4px;gap:6px;min-height:70px}.cvg-photo-venue{font-size:10px;letter-spacing:.035em}.cvg-photo-caption{font-size:13px;line-height:1.55;margin-top:6px}.cvg-photo-more{font-size:14px}
 .cvg-empty{padding:30px 16px;font-size:14px}
}
@media(max-width:360px){.cvg-venues{gap:12px}.cvg-venue-name{font-size:22px}.cvg-panel-heading{display:block}.cvg-venue-link{margin-top:15px}.cvg-filters{gap:14px}.cvg-grid{gap:17px 11px}}
