/* Only the site's own form additions; native calendar layout is preserved. */
.rp-booking { --tt-primary-color: var(--rp-blue); --tt-secondary-color: var(--rp-text); }
.rp-booking .ant-typography, .rp-booking .ant-form, .rp-booking .ant-btn { font-family: inherit; }
.rp-booking .ant-col { min-width: 0; }
.rp-booking .timetics-timezone-select { display: none; }
.rp-booking .flatpickr-day.selected,
.rp-booking .flatpickr-day.today::before,
.rp-booking .tt-booking-body-wrap .submit-btn { background: var(--rp-blue); background-image: none; }
.rp-booking .ant-btn { min-height: 44px; height: auto; white-space: normal; }
.rp-booking .tt-meeting-name { color: var(--rp-navy); overflow-wrap: anywhere; }
.rp-booking input, .rp-booking textarea { font-size: 16px; }
.rp-booking button:focus-visible,
.rp-booking .flatpickr-day:focus-visible { outline: 3px solid var(--rp-blue); outline-offset: 3px; }
@media (max-width: 1023px) {
    .rp-booking .ant-col-md-8, .rp-booking .ant-col-md-16,
    .rp-booking .ant-col-md-7, .rp-booking .ant-col-lg-16,
    .rp-booking .ant-col-lg-7 { flex: 0 0 100%; max-width: 100%; }
    .rp-booking .ant-col-md-1, .rp-booking .ant-col-lg-1 { display: none; }
    .rp-booking .tt-flatpickr-calendar { padding-inline-end: 0; }
    .rp-booking .tt-booking-body-wrap { padding: 20px; }
}
.rp-booking-data-note {
    margin-block: 1rem;
    padding: 1rem;
    color: var(--rp-text, #253442);
    background: var(--rp-bg, #f7f9fc);
    border-inline-start: 3px solid var(--rp-border, #dce4eb);
    font-size: .9375rem;
    line-height: 1.6;
}
.rp-booking-consent .ant-checkbox-wrapper {
    align-items: flex-start;
    min-height: 44px;
    color: var(--rp-text, #253442);
    font-size: .9375rem;
    line-height: 1.6;
}
.rp-booking .rp-booking-consent .ant-checkbox { align-self: flex-start; margin-block-start: 4px; flex-shrink: 0; }
.rp-booking-consent .ant-checkbox-label { min-width: 0; }
.rp-booking-consent a { color: var(--rp-blue, #2b6cb0); text-decoration: underline; }
.rp-booking-consent a:focus-visible { outline: 3px solid var(--rp-blue, #2b6cb0); outline-offset: 3px; }
.rp-booking-phone input { min-height: 44px; }
.rp-booking-release-note { color: var(--rp-text, #253442); font-size: .9375rem; line-height: 1.6; }
.rp-booking-release-note > a { display: block; width: fit-content; max-width: 100%; min-height: 44px; padding-block: .6rem; font-weight: 600; text-decoration: underline; }
.rp-booking-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
