/* Shared typography for booking, advice and product installation forms. */
.tkgm-booking{--tkgm-body-size:16px;--tkgm-help-size:14px;font-family:var(--tkgm-font);font-size:var(--tkgm-body-size);line-height:1.5}
.tkgm-booking.tkgm-advice{font-size:var(--tkgm-body-size)}
.tkgm-booking :is(.tkgm-field,.tkgm-customer-option,.tkgm-advice-customer-type label,.tkgm-advice-customer-type legend){font-family:var(--tkgm-font);font-size:var(--tkgm-body-size)!important;line-height:1.5}
.tkgm-booking :is(.tkgm-field input,.tkgm-field select,.tkgm-field textarea,.tkgm-contact-fields input,.tkgm-address-search>input,.tkgm-advice-search>input,.tkgm-picker-quantity input,#tkgm-pipe){font-family:var(--tkgm-font);font-size:var(--tkgm-body-size)!important;font-weight:400;line-height:1.5}
.tkgm-booking :is(input,textarea)::placeholder{font-family:inherit;font-size:inherit}
.tkgm-booking :is(.tkgm-button,.tkgm-mobile-navigation .tkgm-button,.tkgm-advice-actions .tkgm-button,.tkgm-picker-actions .tkgm-picker-add){font-family:var(--tkgm-font);font-size:var(--tkgm-body-size)!important;font-weight:600;line-height:1.4}
.tkgm-booking :is(.tkgm-panel>p,.tkgm-contact p,.tkgm-installation-dates p,.tkgm-recommended-fuse,.tkgm-pipe-hint,.tkgm-picker-status,.tkgm-choice-copy strong,.tkgm-advice-service-copy,.tkgm-advice-summary,.tkgm-help-body){font-size:var(--tkgm-body-size)!important;line-height:1.5}
.tkgm-booking :is(small,.tkgm-choice-copy small,.tkgm-advice-service-copy small,.tkgm-advice-picker-option small,.tkgm-offer-line-detail,.tkgm-address-price-note,.tkgm-price-hint,.tkgm-picker-note,.tkgm-picker-rot,.tkgm-picker-quantity-details,.tkgm-address-help,.tkgm-field-error,.tkgm-advice-help,.tkgm-advice-privacy,.tkgm-advice-optional,.tkgm-help-button,.tkgm-entry-price-note){font-size:var(--tkgm-help-size)!important;line-height:1.5}
.tkgm-booking :is(.tkgm-calendar-weekdays,.tkgm-advice-weekdays){font-family:var(--tkgm-font);font-size:14px!important;line-height:1.5}
.tkgm-booking :is(.tkgm-calendar-days button,.tkgm-advice-days button,.tkgm-selected-dates button,.tkgm-contact-dates){font-family:var(--tkgm-font);font-size:16px!important;line-height:1.5}
.tkgm-booking :is(.tkgm-calendar-header strong,.tkgm-advice-calendar-header strong){font-family:var(--tkgm-font);font-size:18px!important;line-height:1.4;font-weight:600}
.tkgm-booking :is(.tkgm-summary-bar-price>span,.tkgm-summary-bar-action){font-size:14px!important;line-height:1.5}
.tkgm-booking .tkgm-summary-bar-price strong{font-family:var(--tkgm-font);font-size:26px!important;font-weight:700;line-height:1.25}
.tkgm-booking :is(.tkgm-help-dialog #tkgm-help-title,.tkgm-advice-dialog .tkgm-help-header h2){font-family:var(--tkgm-font);font-size:22px!important;font-weight:600;line-height:1.3;text-transform:none}
.tkgm-booking .tkgm-help-body h3{font-family:var(--tkgm-font);font-size:18px!important;font-weight:600;line-height:1.4}
.tkgm-booking.tkgm-advice-flow [data-advice-step]>.tkgm-step-heading>h3{font-family:var(--tkgm-heading-font);font-size:32px;font-weight:400;line-height:1.2}
.tkgm-booking :is(.tkgm-picker-product-price,.tkgm-advice-picker .tkgm-advice-picker-price){font-family:var(--tkgm-font);font-size:28px!important;line-height:1.25;font-weight:700}
@media(max-width:767px){.tkgm-booking .tkgm-summary-bar-price strong{font-size:22px!important}.tkgm-booking :is(.tkgm-picker-product-price,.tkgm-advice-picker .tkgm-advice-picker-price){font-size:24px!important}}

/* Shared controls and surfaces, aligned with the October 2026 site design. */
.tkgm-booking{--tkgm-control-radius:6px;--tkgm-control-outline:3px solid var(--tkgm-focus)}
.tkgm-booking :is(.tkgm-field input:not([type=checkbox]):not([type=radio]),.tkgm-field select,.tkgm-field textarea,.tkgm-contact-fields input:not([type=checkbox]):not([type=radio]),.tkgm-address-search>input,.tkgm-advice-search>input){min-height:48px;padding:12px 16px;border:1px solid var(--tkgm-text);border-radius:var(--tkgm-control-radius);background:var(--tkgm-white);color:var(--tkgm-text)}
.tkgm-booking :is(.tkgm-field input,.tkgm-field select,.tkgm-field textarea,.tkgm-address-search>input,.tkgm-advice-search>input):not(:disabled):not(:focus):hover{border-color:var(--tkgm-text)}
.tkgm-booking :is(.tkgm-field input,.tkgm-field select,.tkgm-field textarea,.tkgm-contact-fields input,.tkgm-address-search>input,.tkgm-advice-search>input):focus-visible{outline:var(--tkgm-control-outline)!important;outline-offset:3px;box-shadow:none}
.tkgm-booking :is(button,a,summary):focus-visible{outline:var(--tkgm-control-outline)!important;outline-offset:3px}
.tkgm-booking :is(.tkgm-button,.tkgm-advice-picker .tkgm-button,.tkgm-mobile-navigation .tkgm-button,.tkgm-advice-actions .tkgm-button,.tkgm-picker-actions .tkgm-picker-add){min-height:48px;padding:12px 24px;border-radius:var(--tkgm-control-radius)}
.tkgm-booking :is(.tkgm-help-dialog,.tkgm-advice-dialog){padding:24px;border:1px solid var(--tkgm-border);border-radius:8px;background:var(--tkgm-white);color:var(--tkgm-text);line-height:1.5}
.tkgm-booking :is(.tkgm-help-dialog,.tkgm-advice-dialog)::backdrop{background:rgba(0,0,0,.5)}
.tkgm-booking :is(.tkgm-advice-contact,.tkgm-call-help,.tkgm-advice-calendar){padding:24px}
.tkgm-booking :is(.tkgm-advice-contact,.tkgm-advice-summary,.tkgm-entry-result,.tkgm-advice-summary,.tkgm-call-help,.tkgm-summary-sheet){background:var(--tkgm-surface)}
.tkgm-booking :is(.tkgm-advice-contact,.tkgm-entry-result,.tkgm-call-help){border-radius:var(--tkgm-control-radius)}
@media(max-width:767px){.tkgm-booking :is(.tkgm-help-dialog,.tkgm-advice-dialog,.tkgm-advice-contact,.tkgm-call-help,.tkgm-advice-calendar){padding:16px}.tkgm-booking :is(.tkgm-mobile-navigation .tkgm-button,.tkgm-advice-actions .tkgm-button){padding:12px 8px}}
