button.booker{width:100%;border:0;text-align:left;cursor:pointer;font:inherit}
button.lb-burger{background:none;color:inherit;cursor:pointer}
.m-nav{display:flex;flex-direction:column;padding:8px var(--pad) 20px;border-top:1px solid var(--line)}
.m-nav[hidden]{display:none}.m-nav a{padding:14px 0;font:500 18px/1 'Work Sans',sans-serif;text-decoration:none;border-bottom:1px solid var(--line)}
@media (min-width:1001px){.m-nav{display:none!important}}
.cookie[hidden]{display:none}
.ot-modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:16px}
.ot-modal[hidden]{display:none}
.ot-box{background:#fff;border-radius:18px;width:min(720px,100%);max-height:92vh;overflow:auto;padding:22px;position:relative}
.ot-box h2{font:400 30px/1.1 'Fraunces',serif;margin-bottom:14px}
.ot-box iframe{width:100%;height:560px;border:0}
.ot-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:1.5px solid #000;background:#fff;font-size:20px;cursor:pointer}
/* L&B logo: original artwork, recoloured with a CSS mask (shape untouched). Colour = header ink. */
.lb-logo-m{display:block;width:56px;height:40px;background:currentColor;-webkit-mask:url(/assets/logos/lb-logo-black.svg) center/contain no-repeat;mask:url(/assets/logos/lb-logo-black.svg) center/contain no-repeat}
.lb-mark{color:var(--v-ink)}
body.venue .lb-mark{color:var(--logo,var(--v-ink))}
/* Roundel stamp: section break before the footer on every venue page */
.v-stamp{position:relative;padding:70px 0 80px;text-align:center;overflow:hidden}
.v-stamp::before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:currentColor;opacity:.25}
.v-stamp img{display:block;margin:0 auto;background:#f9f5e4;border-radius:50%;padding:6px;position:relative;width:clamp(150px,22vw,240px);height:auto;filter:drop-shadow(0 14px 28px rgba(0,0,0,.3))}
.v-stamp p{position:relative;margin-top:14px;font:600 12px 'Work Sans',sans-serif;letter-spacing:.24em;text-transform:uppercase}
/* Group roundel row in the shared footer */
.lb-roundels{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:30px 0 6px;border-top:1px solid rgba(249,245,228,.2);margin-top:30px}
.lb-roundels a{display:block;width:72px;height:72px;border-radius:50%;background:#f9f5e4;padding:4px;transition:transform .2s}
.lb-roundels a:hover{transform:rotate(-8deg) scale(1.06)}
.lb-roundels img{width:100%;height:100%;object-fit:contain;border-radius:50%}
/* Roundels/logos: never squash or stretch (keep artwork shape at every width) */
img[src*="/roundels/"],img[src*="/logos/"]{height:auto!important;aspect-ratio:1/1;object-fit:contain}
img[src*="london-and-paris-logo"]{aspect-ratio:auto}

/* Non-round logos (London & Paris) in the stamp: no disc, full artwork, straight and centred */
.v-stamp img.logo{background:none;border-radius:0;padding:0;width:clamp(170px,22vw,240px);aspect-ratio:514/393!important;object-fit:contain;transform:none;filter:none;margin:0 auto}
.v-stamp:has(img.logo)::before{display:none}

/* Venues without bookings: hide every booking trigger (header, footer, page) */
body.no-book [data-book]{display:none!important}

/* Christmas accent card (venue-styled via page classes) */
.xmas-card{display:flex;align-items:center;gap:16px;padding:16px 22px;text-decoration:none;max-width:560px;transition:transform .2s}
.xmas-card:hover{transform:translateY(-2px)}
.xmas-card .xc-star{font-size:30px;line-height:1}
.xmas-card b{display:block;font:500 22px/1.1 'Fraunces',serif}
.xmas-card small{display:block;font:500 13.5px/1.3 'Work Sans',sans-serif;opacity:.85;margin-top:3px}
.xmas-card .arr{margin-left:auto;font-size:20px}

/* Roundel sizing (Jonnii, 13 Oct): artwork files are cropped to ~94% (*-fit.png); circles carry no extra padding.
   Panataria keeps its original treatment. L&P uses lp-roundel-fit.svg, centred inside its circle. */
.v-stamp img{padding:0}

.lb-roundels a{padding:0}
.lb-roundels img[src*="lp-roundel"],.g-rnds img[src*="lp-roundel"]{background:#fff;border-radius:50%;padding:0!important}
.v-stamp img[src*="lp-roundel"]{background:#fff}
.lu-oven .rnd{padding:0!important;width:38%!important}
/* Round 3 roundels (Jonnii): still at the bottom, single ring, Panataria on a disc */
.lb-roundels img,.lb-roundels a{animation:none!important;transition:none!important;transform:none!important}
.lb-roundels a{background:transparent!important;box-shadow:none!important;border:0!important;width:76px;height:76px;min-width:44px;min-height:44px}
.lb-roundels a:focus-visible{outline:3px solid #f6efe4;outline-offset:3px}
.lb-roundels img[src*="panataria"]{box-shadow:0 0 0 3px #f6efe4;border-radius:50%}
.lb-roundels img[src*="luben"]{background:#f6efe4;border-radius:50%}
.foot-word{opacity:.85!important;font-size:clamp(44px,8vw,120px)!important;font-style:normal!important;font-weight:400!important;color:#f6efe4;white-space:normal!important;line-height:1!important}
.v-stamp img:not([src*="panataria"]):not([src*="lp-roundel"]):not(.logo){background:transparent!important;filter:none!important}
.v-stamp img{animation:none!important}
.js .v-stamp img{opacity:0;transform:translateY(10px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .v-stamp.in img,.v-stamp img{opacity:1;transform:none}

.lb-foot ul.soc{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:10px;columns:auto}
.lb-foot ul.soc li{margin:0}
body.no-book .lb-cta a[data-book]{display:inline-flex!important}
.foot-logo{display:block;width:140px;height:auto;margin:0 0 20px}
.m-vh{font:600 11px 'Work Sans';letter-spacing:.16em;text-transform:uppercase;opacity:.6;margin:14px 0 4px}
.m-venues{list-style:none;margin:0 0 8px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
.m-venues a{display:flex!important;align-items:center;gap:10px;padding:8px 0!important;font:500 15px/1.2 'Work Sans',sans-serif!important;border-bottom:0!important;min-height:44px}
.m-venues img,.m-vd{width:36px;height:36px;border-radius:50%;flex:0 0 36px;object-fit:contain}
.m-vd{display:grid;place-items:center;background:#1a1410;color:#fff;font:600 15px 'Fraunces',serif}
.m-venues span{display:flex;flex-direction:column}.m-venues small{font-size:12px;opacity:.65}
@media (max-width:360px){.m-venues{grid-template-columns:1fr}}
.vs-row{display:flex;justify-content:flex-end;padding-top:10px;padding-bottom:0;position:relative;z-index:5}
.foot-word{line-height:1.12!important;padding-bottom:.08em;overflow:visible!important}
