:root{font-family:Arial,sans-serif;color:#000;background:#f8d529}*{box-sizing:border-box}body{margin:0}.booking-app{min-height:100vh;padding:24px clamp(16px,4vw,64px) 64px}.booking-topbar{display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:0 auto 64px}.booking-brand{color:#000;font-weight:900;letter-spacing:.14em;text-decoration:none}.booking-brand span{font-weight:400}.booking-topbar nav{display:flex;align-items:center;gap:12px}.booking-topbar nav a,.booking-topbar nav button{border:1px solid #000;background:#fff;color:#000;padding:10px 14px;font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.booking-topbar nav .active{background:#000;color:#fff}.booking-hero{max-width:1440px;margin:0 auto 42px}.eyebrow{margin:0 0 10px;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.booking-hero h1{max-width:720px;margin:0;font-size:clamp(42px,7vw,88px);line-height:.9;letter-spacing:-.06em}.booking-hero>p:last-child{max-width:560px;font-size:17px;line-height:1.5}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1440px;margin:auto}.booking-panel{padding:24px;background:#fff;border:2px solid #000;box-shadow:6px 6px #000}.booking-panel-wide{grid-column:1/-1}.booking-panel h2{margin:0 0 20px;font-size:28px;letter-spacing:-.03em}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.stack-form{display:grid;gap:13px}.stack-form label,.inline-form label{display:grid;gap:5px;font-size:12px;font-weight:800}.stack-form input,.stack-form select,.stack-form textarea,.inline-form input,.inline-form select{min-height:42px;width:100%;border:1px solid #000;background:#fff;padding:9px;font:inherit}.stack-form textarea{resize:vertical}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex!important;grid-template-columns:auto 1fr;display:flex;align-items:center;gap:8px}.check input{width:auto}.button{min-height:44px;border:2px solid #000;background:#000;color:#fff;padding:10px 15px;font:inherit;font-weight:900;cursor:pointer}.button.secondary{background:#fff;color:#000}.inline-form{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr .8fr auto;gap:8px;align-items:end;margin-bottom:18px}.availability-list,.appointment-list{display:grid;gap:8px}.availability-row,.appointment-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #000;padding:13px 0}.availability-row small,.appointment-row small{display:block;opacity:.7}.booking-error{max-width:720px;margin:0 auto 20px;padding:12px;background:#fff0f0;border:2px solid #900;color:#700;font-weight:700}.booking-toast{position:fixed;right:20px;bottom:20px;margin:0;padding:12px 16px;background:#000;color:#fff}.muted{opacity:.65}@media(max-width:900px){.booking-grid{grid-template-columns:1fr}.booking-panel-wide{grid-column:auto}.inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-form .button{grid-column:1/-1}}@media(max-width:560px){.booking-topbar{align-items:flex-start;gap:18px;flex-direction:column;margin-bottom:40px}.booking-topbar nav{flex-wrap:wrap}.two-col,.inline-form{grid-template-columns:1fr}.booking-panel{padding:18px}.booking-hero h1{font-size:52px}}
