/* Zone website header and footer for the booking pages (zp399t, Neil 25-10-2026: the waiting list and booking pages looked
   bare next to the rest of the site). The same header and footer as web_base.html, scoped to .wc so they never clash with
   site.css (which the booking pages use for everything else). Keep in step with the header and footer rules in web.css. */
.wc{--ground:#F7F6F3;--paper:#FFFFFF;--ink:#172326;--ink2:#44534F;--muted:#6B7876;--rule:#E3E0DA;--rule2:#D2CEC6;
  --teal:#2A8794;--teal2:#47ACB8;--tealdk:#1D5F68;--tealwash:#E9F4F5;--pink:#E62B5A;--pinkdk:#C21D48;--r:4px;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--sans:"Jost",system-ui,sans-serif;
  font-family:var(--sans);font-size:17px;line-height:1.5;color:var(--ink)}
.wc,.wc *{box-sizing:border-box}
.wc img{max-width:100%;display:block}
.wc h4,.wc p{margin:0}
.wc .wrap{max-width:1240px;margin:0 auto;padding:0 32px}

header.site.wc{background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:20}
header.site.wc .wrap{display:flex;align-items:center;gap:28px;height:68px;position:relative}
.wc .logo img{height:30px;width:auto}
.wc nav.main{display:flex;gap:4px;flex:1}
.wc nav.main a{color:var(--ink);text-decoration:none;font-weight:500;font-size:16px;padding:8px 12px;border-radius:3px;position:relative}
.wc nav.main a:hover{background:var(--ground)}
.wc .hdr-cta{display:flex;gap:10px}
.wc .hdr-cta .signin{color:var(--ink);text-decoration:none;font-weight:500;font-size:15px;padding:8px 10px;align-self:center}
.wc .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 15px/1 var(--sans);letter-spacing:.01em;
  padding:12px 18px;min-height:0;border-radius:var(--r);text-decoration:none;border:1.5px solid transparent;cursor:pointer;white-space:nowrap}
.wc .btn-pink{background:var(--pink);color:#fff}.wc .btn-pink:hover{background:var(--pinkdk)}
.wc .btn-line{background:var(--paper);color:var(--tealdk);border-color:var(--teal)}.wc .btn-line:hover{background:var(--tealwash)}
.wc .btn-ghost{background:transparent;color:var(--ink);border-color:var(--rule2)}
.wc .btn.sm{padding:9px 13px;font-size:14px}
.wc details.menu{display:none;margin-left:auto}
.wc details.menu summary{list-style:none;cursor:pointer}
.wc details.menu summary::-webkit-details-marker{display:none}
.wc details.menu .sheet{position:absolute;top:68px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--rule);padding:8px 16px 16px;display:flex;flex-direction:column;gap:2px;z-index:30}
.wc details.menu .sheet a{padding:12px 4px;color:var(--ink);text-decoration:none;font-weight:500;border-bottom:1px solid var(--rule)}
.wc details.menu .sheet .btn{margin-top:10px;border:0}

footer.site.wc{background:var(--paper);border-top:1px solid var(--rule);margin-top:44px}
footer.site.wc>.wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding-top:34px;padding-bottom:34px}
footer.site.wc h4{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
footer.site.wc ul{list-style:none;margin:0;padding:0}
footer.site.wc li{padding:3px 0}
footer.site.wc a{color:var(--ink);text-decoration:none}
footer.site.wc a:hover{color:var(--tealdk);text-decoration:underline}
footer.site.wc .fine{font-size:14px;color:var(--ink2);margin-top:10px}
footer.site.wc .foot-base{border-top:1px solid var(--rule);font:12px var(--mono);color:var(--muted);padding:14px 0}

@media (max-width:900px){
  .wc .wrap{padding:0 16px}
  .wc nav.main{display:none}
  .wc .hdr-cta .btn-line,.wc .hdr-cta .signin{display:none}
  header.site.wc .wrap{gap:12px}
  .wc details.menu{display:block}
  footer.site.wc>.wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .wc .hdr-cta .btn{padding:9px 12px;font-size:14px}
  footer.site.wc>.wrap{grid-template-columns:1fr}
}
