#page-booking [hidden],#page-booking .booking-card-only{display:none!important}
#page-booking>.hero{min-height:0!important;padding:32px 24px 20px!important}
#page-booking>.hero .hero-h1{font-size:clamp(30px,4vw,48px)!important;margin-bottom:10px}
#page-booking>.hero .hero-p{font-size:14px;line-height:1.8}
#page-booking .booking-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:8px}
#page-booking .booking-categories button{min-width:0;min-height:48px;padding:10px 8px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
#page-booking .booking-categories button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
#page-booking .booking-categories button:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}
#page-booking .booking-category-result{font-size:12px;line-height:1.7;color:var(--ink-muted);margin:0 0 16px}
#page-booking .booking-payment-note{padding:12px 14px;margin-bottom:12px;background:var(--bg-warm);border:1px solid var(--border);font-size:13px;line-height:1.8;color:var(--ink)}
#page-booking .booking-hours{margin-bottom:10px;border-bottom:1px solid var(--border);color:var(--ink)}
#page-booking .booking-hours summary{min-height:44px;padding:10px 0;box-sizing:border-box;font-size:13px;cursor:pointer}
#page-booking .booking-hours p{font-size:13px;line-height:1.8;margin:0 0 12px}
#page-booking .booking-labeled-field{min-width:0;display:flex;flex-direction:column;gap:6px}
#page-booking .booking-labeled-field>label{font-size:13px;line-height:1.5;color:var(--ink);font-weight:500}
#page-booking .booking-labeled-field>input{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:600px){#page-booking .booking-categories{grid-template-columns:repeat(2,minmax(0,1fr))}#page-booking .booking-wrap{padding-top:16px!important}#page-booking>.hero{padding-top:26px!important;padding-bottom:12px!important}}
