/* Find a Venue - venue page. Palette and type from the site style rules. */
/* The page sets its own width: the theme's content container is opened up on venue pages only. */
.fvp-page .site-content{padding-top:0;padding-bottom:0}
.fvp-page .site-content>.container{max-width:none;width:auto;padding-left:0;padding-right:0}
.fvp{--r:#C8161D;--rd:#A01016;--k:#1B1A1A;--g:#5F5B57;--l:#E7E3DF;--o:#F4F2EF;--w:#FFFFFF;
	font-family:'Nunito',system-ui,sans-serif;color:var(--k);background:var(--w);font-size:17px;line-height:1.6;padding-bottom:24px}
.fvp *,.fvp *::before,.fvp *::after{box-sizing:border-box}
.fvp a{color:var(--r)}
.fvp a:hover{color:var(--rd)}
.fvp img{max-width:100%;display:block}
.fvp-wrap{max-width:1248px;margin:0 auto;padding:0 24px}
.fvp-cz,.fvp-h1,.fvp-h2{font-family:'Cinzel',serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.fvp-lbl{font-family:'Cinzel',serif;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:12px;line-height:1.3}
.fvp-muted{color:var(--g)}
.fvp-red{color:var(--r)}
.fvp-small{font-size:14px;color:var(--g);line-height:1.5}
.fvp-center{text-align:center}
.fvp-note{font-size:14px;color:var(--g);margin:10px 0 0}

/* Breadcrumb and title */
.fvp-crumbs{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0 0;font-size:14px;color:var(--g)}
.fvp-crumbs a{color:var(--g);text-decoration:none}
.fvp-crumbs a:hover{color:var(--k);text-decoration:underline}
.fvp-crumbs [aria-current]{color:var(--k)}
.fvp-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;padding:20px 0 28px}
.fvp-head__main{flex:1 1 560px;display:flex;flex-direction:column;gap:14px;min-width:0}
.fvp-tags{display:flex;gap:8px;flex-wrap:wrap}
.fvp-tag{background:var(--o);padding:6px 10px;border-radius:4px;color:var(--k)}
.fvp-draft{background:var(--k);color:var(--w);padding:6px 10px;border-radius:4px}
.fvp-h1{font-size:52px;line-height:1.05;margin:0;color:var(--k);overflow-wrap:anywhere}
.fvp-where{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:16px;color:var(--g)}
.fvp-where span{display:inline-flex;align-items:center;gap:6px}
.fvp-head__actions{display:flex;gap:8px}

/* Buttons */
.fvp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 16px;border-radius:4px;border:1px solid transparent;
	font-family:'Cinzel',serif;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:12px;line-height:1;text-decoration:none;cursor:pointer;background:none;box-shadow:none}
.fvp a.fvp-btn{text-decoration:none}
.fvp-btn--ghost{background:var(--w);border-color:var(--l);color:var(--k)}
.fvp a.fvp-btn--ghost,.fvp a.fvp-btn--ghost:hover{color:var(--k)}
.fvp-btn--ghost:hover{border-color:var(--k)}
.fvp-btn--light{background:var(--w);border-color:var(--k);color:var(--k)}
.fvp-btn--light:hover{background:var(--k);color:var(--w)}
.fvp-btn--light:hover .fvp-ic{stroke:var(--w)}
.fvp-btn--red,.fvp a.fvp-btn--red{background:var(--r);color:var(--w);border-color:var(--r)}
.fvp-btn--red:hover,.fvp a.fvp-btn--red:hover{background:var(--rd);border-color:var(--rd);color:var(--w)}
.fvp-btn--outline,.fvp a.fvp-btn--outline{background:var(--w);border-color:var(--k);color:var(--k);height:48px}
.fvp-btn--outline:hover,.fvp a.fvp-btn--outline:hover{background:var(--k);color:var(--w)}
.fvp-btn--block{width:100%;height:52px;font-size:13px}
.fvp-btn--lg{height:56px;padding:0 28px;font-size:13px}

/* Gallery */
.fvp-gallery{display:grid;gap:8px;position:relative}
.fvp-ph{display:block;padding:0;margin:0;border:0;background:var(--o);border-radius:4px;overflow:hidden;cursor:zoom-in;width:100%;height:100%}
.fvp-ph img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}
.fvp-ph:hover img{opacity:.92}
.fvp-gallery--one{grid-template-columns:1fr;height:min(56vw,540px)}
.fvp-gallery--three{grid-template-columns:2fr 1fr;grid-template-rows:260px 260px}
.fvp-gallery--three .fvp-ph--0{grid-row:span 2}
.fvp-gallery--three.fvp-gallery--n2 .fvp-ph--1{grid-row:span 2}
.fvp-gallery--five{grid-template-columns:2fr 1fr 1fr;grid-template-rows:260px 260px}
.fvp-gallery--five .fvp-ph--0{grid-row:span 2}
.fvp-allphotos{position:absolute;right:16px;bottom:16px}
.fvp-count{display:none}
.fvp-nophoto{height:300px;background:var(--o);border:1px solid var(--l);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px}
.fvp-nophoto__t{font-size:22px;margin:0}
.fvp-nophoto__s{font-size:15px;color:var(--g);max-width:46ch;margin:0}
.fvp-stripes{display:flex;flex-direction:column;gap:8px}
.fvp-stripes i{display:block;width:56px;height:8px;background:var(--r)}

/* Key facts */
.fvp-facts{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));border-bottom:1px solid var(--l);margin-top:32px}
.fvp-facts--1{--n:1}.fvp-facts--2{--n:2}.fvp-facts--3{--n:3}.fvp-facts--4{--n:4}.fvp-facts--5{--n:5}
.fvp-fact{display:flex;flex-direction:column;gap:8px;padding:0 24px 28px;border-left:1px solid var(--l);min-width:0}
.fvp-fact:first-child{padding-left:0;border-left:0}
.fvp-fact__v{font-size:30px;line-height:1.1;overflow-wrap:anywhere}

/* Columns */
.fvp-cols{display:flex;flex-wrap:wrap;gap:64px;align-items:flex-start}
.fvp-main{flex:999 1 560px;min-width:0}
.fvp-side{flex:1 1 340px;max-width:400px;position:sticky;top:96px;padding-top:40px}
body.admin-bar .fvp-side{top:128px}

/* Sections */
.fvp-sec,.fvp-details .fdp-sec{padding:40px 0;border-top:1px solid var(--l);margin:0}
.fvp-sec--first{border-top:0}
.fvp-rule{width:32px;height:3px;background:var(--r);margin-bottom:14px}
.fvp-h2,.fvp-details .fdp-sec>h2{font-family:'Cinzel',serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:26px;line-height:1.1;margin:0 0 18px;color:var(--k)}
.fvp-details .fdp-sec>h2::before{content:"";display:block;width:32px;height:3px;background:var(--r);margin-bottom:14px}
.fvp-desc{max-width:68ch}
.fvp-desc p{margin:0 0 14px}
.fvp-desc p:last-child{margin-bottom:0}
.fvp-js .fvp-desc--cut{max-height:9.6em;overflow:hidden}
.fvp-js .fvp-desc--open{max-height:none}
.fvp-more{display:none}
.fvp-js .fvp-more{display:inline-block}
.fvp-js .fvp-more{background:none;border:0;padding:0;margin-top:12px;color:var(--r);font:700 16px 'Nunito',sans-serif;text-decoration:underline;cursor:pointer}
.fvp-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.fvp-chip{background:var(--o);border-radius:4px;padding:8px 12px;font-size:14px;font-weight:600;line-height:1.3}
.fvp-tbl{display:grid;grid-template-columns:minmax(140px,220px) 1fr;border-top:1px solid var(--l)}
.fvp-k,.fvp-v{padding:14px 0;border-bottom:1px solid var(--l);font-size:16px}
.fvp-k{color:var(--g);padding-right:16px}
.fvp-ticks{list-style:none;margin:0;padding:0}
.fvp-ticks li{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:16px}
.fvp-map{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:220px;margin-bottom:18px;background:var(--o);border:1px solid var(--l);border-radius:4px;font-weight:700;text-decoration:none}

/* Restyle of the venue's own details (fav-venue-details) */
.fvp-details .fdp{margin:0;padding:0;border:0;background:none}
.fvp-details .fdp-dl{display:grid;grid-template-columns:minmax(140px,220px) 1fr;margin:0;border-top:1px solid var(--l)}
.fvp-details .fdp-dl dt,.fvp-details .fdp-dl dd{margin:0;padding:14px 0;border-bottom:1px solid var(--l);font-size:16px}
.fvp-details .fdp-dl dt{color:var(--g);padding-right:16px;font-weight:400}
.fvp-details table{width:100%;border-collapse:collapse;font-size:15px}
.fvp-details th{font-family:'Cinzel',serif;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--g);text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid var(--k)}
.fvp-details td{padding:14px 12px 14px 0;border-bottom:1px solid var(--l);vertical-align:top}
.fvp-details ul{padding-left:0;list-style:none;margin:0}
.fvp-details li{padding:6px 0}
.fvp-details .fdp-pack,.fvp-details .fdp-menu{border:1px solid var(--l);border-radius:4px;padding:20px;box-shadow:none;background:var(--w)}
.fvp-details .fdp-price{font-family:'Cinzel',serif;font-weight:700;color:var(--r)}
.fvp-details .fdp-faq details,.fvp-details details{border-bottom:1px solid var(--l);padding:14px 0}
.fvp-details summary{font-weight:700;cursor:pointer}
.fvp-details .fdp-y{color:var(--k)}
.fvp-details .fdp-n{color:var(--g)}

/* Enquiry card */
.fvp-card{border:1px solid var(--l);border-radius:4px;padding:24px;display:flex;flex-direction:column;gap:18px;background:var(--w)}
.fvp-card__price{display:flex;flex-direction:column;gap:6px}
.fvp-card__amount{font-size:30px;line-height:1.1}
.fvp-form{display:flex;flex-direction:column;gap:12px;margin:0}
.fvp-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--k);margin:0}
.fvp-form input,.fvp-form select,.fvp-form textarea{width:100%;height:48px;border:1px solid var(--l);border-radius:4px;padding:0 12px;font:400 16px 'Nunito',sans-serif;color:var(--k);background:var(--w);box-shadow:none;margin:0}
.fvp-form textarea{height:auto;padding:10px 12px;resize:vertical}
.fvp-form input:focus,.fvp-form select:focus,.fvp-form textarea:focus{outline:none;border:2px solid var(--k);padding:0 11px}
.fvp-form textarea:focus{padding:9px 11px}
.fvp-form .fvp-small{margin:0}
.fvp-opt{font-weight:400;color:var(--g)}
.fvp-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fvp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fvp-js .fvp-step2{display:none}
.fvp-js .fvp-form--open .fvp-step2{display:flex;flex-direction:column;gap:12px}
.fvp-step2{display:flex;flex-direction:column;gap:12px}
.fvp-err{margin:0;color:var(--r);font-size:14px;border:1px solid var(--r);border-radius:4px;padding:10px 12px}
.fvp-done{display:flex;gap:12px;align-items:flex-start;background:var(--o);border-radius:4px;padding:16px;font-size:15px}
.fvp-contact{border-top:1px solid var(--l);padding-top:16px;display:flex;flex-direction:column;gap:12px;font-size:15px}
.fvp-crow{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.fvp-crow a{overflow-wrap:anywhere;text-align:right}
.fvp-socials{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.fvp-sidelinks{text-align:center;font-size:14px;margin:14px 0 0}
.fvp-sidelinks a{color:var(--g)}

/* Concierge band: the one black band on the page */
.fvp-band{background:var(--k);color:var(--w);margin-top:56px}
.fvp-band__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px;padding-top:72px;padding-bottom:72px}
.fvp-band__txt{max-width:660px;display:flex;flex-direction:column;gap:12px}
.fvp-band__txt .fvp-lbl,.fvp-band__txt p{color:var(--w);margin:0}
.fvp-band__h{font-size:34px;line-height:1.1;margin:0;color:var(--w)}

/* Similar venues */
.fvp-similar{padding-top:72px;padding-bottom:16px}
.fvp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fvp-vcard{display:flex;flex-direction:column;border:1px solid var(--l);border-radius:4px;text-decoration:none;color:var(--k);overflow:hidden}
.fvp a.fvp-vcard,.fvp a.fvp-vcard:hover{color:var(--k)}
.fvp-vcard:hover{border-color:var(--k)}
.fvp-vcard__img{display:block;aspect-ratio:3/2;background:var(--o)}
.fvp-vcard__img img{width:100%;height:100%;object-fit:cover}
.fvp-vcard__body{display:flex;flex-direction:column;gap:6px;padding:20px}
.fvp-vcard__t{font-size:19px;line-height:1.2}
.fvp-morelinks{font-size:14px;margin:24px 0 0}
.fvp-claimline{margin:40px 0 0;padding-top:20px;border-top:1px solid var(--l);font-size:14px;color:var(--g)}
.fvp-claimbox{margin-top:40px;border:1px solid var(--k);border-radius:4px;padding:28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.fvp-claimbox__t{font-size:22px;margin:6px 0}
.fvp-claimbox .fvp-small{margin:0;max-width:56ch}

/* Mobile bar */
.fvp-bar{display:none}

/* Lightbox */
.fvp-lb{position:fixed;inset:0;z-index:100000;background:#1B1A1A;display:flex;align-items:center;justify-content:center}
.fvp-lb[hidden]{display:none}
.fvp-lb__fig{margin:0;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:12px}
.fvp-lb__fig img{max-width:92vw;max-height:80vh;object-fit:contain;border-radius:4px}
.fvp-lb__fig figcaption{color:#fff}
.fvp-lb button{background:none;border:0;cursor:pointer;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:none}
.fvp-lb__x{position:absolute;top:16px;right:16px}
.fvp-lb__nav{position:absolute;top:50%;transform:translateY(-50%)}
.fvp-lb__prev{left:12px}.fvp-lb__next{right:12px}
html.fvp-noscroll{overflow:hidden}

@media (max-width:1100px){
	.fvp-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
	.fvp-fact:nth-child(4){padding-left:0;border-left:0}
	.fvp-fact:nth-child(n+4){padding-top:20px}
}
@media (max-width:900px){
	.fvp{font-size:16px;padding-bottom:96px}
	.fvp-wrap{padding:0 16px}
	.fvp-h1{font-size:34px;line-height:1.08}
	.fvp-h2,.fvp-details .fdp-sec>h2{font-size:21px}
	.fvp-head{padding:14px 0 20px}
	.fvp-head__actions{display:none}
	.fvp-gallery{display:block;margin:0 -16px;height:auto}
	.fvp-gallery .fvp-ph{display:none;border-radius:0;aspect-ratio:4/3;height:auto}
	.fvp-gallery .fvp-ph--0{display:block}
	.fvp-allphotos{display:none}
	.fvp-count{display:block;position:absolute;right:12px;bottom:12px;background:var(--w);padding:8px 10px;border-radius:4px}
	.fvp-nophoto{height:220px}
	.fvp-facts{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--l);border-radius:4px;margin-top:20px}
	.fvp-fact,.fvp-fact:first-child,.fvp-fact:nth-child(4),.fvp-fact:nth-child(n+4){padding:16px;border-left:0;border-bottom:1px solid var(--l)}
	.fvp-fact:nth-child(odd){border-right:1px solid var(--l)}
	.fvp-facts--1 .fvp-fact,.fvp-facts--3 .fvp-fact:last-child,.fvp-facts--5 .fvp-fact:last-child{border-right:0}
	.fvp-fact__v{font-size:24px}
	.fvp-cols{gap:0}
	.fvp-side{position:static;max-width:none;flex-basis:100%;padding-top:8px}
	.fvp-sec,.fvp-details .fdp-sec{padding:32px 0}
	.fvp-tbl,.fvp-details .fdp-dl{grid-template-columns:minmax(110px,40%) 1fr}
	.fvp-band__in{padding-top:44px;padding-bottom:44px;gap:20px}
	.fvp-band__h{font-size:24px}
	.fvp-band .fvp-btn{width:100%}
	.fvp-cards{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}
	.fvp-vcard{scroll-snap-align:start}
	.fvp-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9990;height:76px;padding:0 16px;gap:12px;align-items:center;justify-content:space-between;background:var(--w);border-top:1px solid var(--l)}
	.fvp-bar__p{display:flex;flex-direction:column;gap:2px;min-width:0}
	.fvp-bar__p .fvp-cz{font-size:18px;line-height:1.1}
	.fvp-bar .fvp-btn{height:48px;padding:0 18px}
	.fvp-bar--hide{display:none}
	.fvp-lb__nav{display:none}
}


/* Phone gallery: swipe in the page (2 Nov 2026) */
.fvp-track{display:contents}
.fvp-ph--extra{display:none}
@media (max-width:900px){
	.fvp-track{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
	.fvp-track::-webkit-scrollbar{display:none}
	.fvp-gallery .fvp-track .fvp-ph,.fvp-gallery .fvp-track .fvp-ph.favsr-bwrap{display:block;flex:0 0 100%;width:100%;scroll-snap-align:start;scroll-snap-stop:always;position:static!important;border-radius:0;aspect-ratio:4/3;height:auto;cursor:pointer}
	.fvp-gallery .fvp-track .fvp-ph img{pointer-events:none;-webkit-user-drag:none}
}
