/* Compact personal booking on phones; keep the address-step submit visible. */
@media(max-width:800px) {
html.szm-booking-active .szm-header-top { padding-top:9px!important; padding-bottom:9px!important; min-height:0!important; }
html.szm-booking-active .szm-brand { width:170px!important; max-width:58%!important; }
html.szm-booking-active .szm-brand img { width:100%!important; height:auto!important; max-height:48px!important; object-fit:contain; }
html.szm-booking-active .szm-menu-button { min-height:40px!important; padding:7px 10px!important; font-size:14px!important; }
#termin.szm-guide { padding-top:16px!important; padding-left:16px!important; padding-right:16px!important; }
#termin.szm-guide>.eyebrow { font-size:10px; margin:0 0 4px!important; }
#termin.szm-guide>.booking-form-heading { font-size:22px!important; line-height:28px!important; margin:0 0 10px!important; }
#termin.szm-guide>.szm-customer-welcome { padding:10px 12px!important; margin:0 0 8px!important; border-radius:9px; }
#termin.szm-guide>.szm-customer-welcome>p:first-child { font-size:16px!important; line-height:22px!important; margin:0 0 5px!important; }
#termin.szm-guide>.szm-customer-welcome>p:nth-of-type(2) { display:none; }
#termin.szm-guide .szm-order-card { display:flex!important; flex-wrap:wrap; align-items:center; gap:3px 9px!important; padding-top:5px!important; }
#termin.szm-guide .szm-order-card>span { font-size:11px!important; line-height:16px; }
#termin.szm-guide .szm-order-card>strong { font-size:16px!important; line-height:21px!important; letter-spacing:.02em; }
#termin.szm-guide>.booking-step-count { margin:6px 0!important; font-size:12px!important; line-height:18px!important; }
#termin.szm-guide>.szm-guide-help { margin:6px 0 8px!important; gap:4px 12px!important; font-size:12px!important; line-height:18px; }
#termin.szm-guide>.szm-guide-help a { min-height:30px!important; }
#termin.szm-guide>.szm-guide-address { padding:12px!important; }
#termin.szm-guide>.szm-guide-address>p { margin:0 0 8px!important; font-size:13px!important; line-height:19px!important; }
#termin.szm-guide .szm-guide-address .field-label { font-size:13px!important; line-height:18px; }
#termin.szm-guide .szm-guide-address input { min-height:46px!important; padding:10px!important; }
#termin.szm-guide>.szm-guide-address>.szm-background-note { font-size:11px!important; line-height:16px!important; margin:7px 0 0!important; }
html.szm-booking-active #termin.szm-guide:has(>.szm-guide-address) { padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))!important; }
html.szm-booking-active #termin.szm-guide>.szm-guide-address>.booking-wizard-actions { position:fixed!important; inset:auto 0 0!important; z-index:120; display:flex!important; gap:8px; margin:0!important; padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))!important; background:#fff; border-top:1px solid #d6dfec; box-shadow:0 -3px 14px #17345412; box-sizing:border-box; }
html.szm-booking-active #termin.szm-guide>.szm-guide-address>.booking-wizard-actions button { flex:1; min-width:0!important; min-height:44px!important; margin:0!important; padding:10px 14px!important; font-size:15px!important; line-height:20px; }
}
