.booking-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:stretch}
.appointment-card .card__body{padding:34px;display:block}
.appointment-card .card__title{font-size:23px;margin:0 0 12px}.appointment-card .card__desc{margin:0 0 28px;font-size:14px;line-height:1.8}
.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}.appointment-form label{font-size:13px;color:#706b65;display:block;min-width:0}
.appointment-form input:not([type=checkbox]):not([type=hidden]){box-sizing:border-box;display:block;width:100%;min-width:0;height:52px;margin-top:9px;border:1px solid #e4ddd5;background:#fff;padding:12px 14px;font:inherit;font-size:14px;border-radius:0;color:#25221f}
.appointment-form input::placeholder{color:#99938c}.appointment-form input:focus-visible{outline:2px solid #887b62;outline-offset:2px}
.booking-captcha{display:grid;grid-template-columns:1fr 180px;gap:20px;align-items:start;margin-top:22px}.booking-captcha img{display:block;margin-top:27px;max-width:100%;object-fit:contain}.booking-refresh{display:block;font-size:12px;margin-top:5px;color:#6c5b40;text-decoration:underline}
.appointment-form .booking-consent{display:flex;gap:8px;align-items:flex-start;margin-top:22px;font-size:12px;line-height:1.7}.booking-consent input{flex:0 0 auto;width:16px;height:16px;margin-top:2px;accent-color:#887b62}
.booking-actions{display:flex;align-items:center;gap:18px;margin-top:20px}.booking-actions button{border:0;background:#887b62;color:#fff;padding:14px 26px;font:inherit;font-size:14px;cursor:pointer;flex:0 0 auto}.booking-actions button:disabled{opacity:.65;cursor:wait}.booking-actions p{font-size:12px;color:#8f8981;line-height:1.7;margin:0}
.booking-layout .ch-solo .card__body{height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 30px;gap:24px}.booking-layout .ch-solo .qr{width:230px;max-width:100%;flex:none;margin:0}.booking-layout .ch-solo .ch-solo__text{flex:none;width:100%;max-width:350px}.booking-layout .ch-solo .card__title{font-size:21px}.booking-layout .ch-solo .card__desc{font-size:14px;line-height:1.8}
.booking-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.booking-error{border-left:3px solid #a34d3c;background:#fff3ed;padding:12px;font-size:14px;color:#7c3024}.booking-success{padding:24px 0;line-height:1.9}.booking-success h3{font-size:20px}.booking-ref{overflow-wrap:anywhere;font-family:monospace}.booking-success a{color:#726247;text-decoration:underline}
@media(max-width:850px){.booking-layout{grid-template-columns:1fr;gap:24px}.booking-layout .ch-solo .card__body{padding:36px 24px}}
@media(max-width:520px){.appointment-card .card__body{padding:25px 21px}.booking-fields{grid-template-columns:1fr;gap:18px}.booking-captcha{grid-template-columns:minmax(0,1fr) 144px;gap:12px}.booking-captcha img{width:144px;height:54px}.booking-actions{align-items:flex-start;flex-direction:column;gap:12px}.booking-actions button{width:100%}.appointment-form input:not([type=checkbox]):not([type=hidden]){font-size:16px}.booking-refresh{font-size:11px}}
