html.szm-booking-active{scroll-behavior:auto!important;overflow-anchor:none}
.szm-customer-welcome{padding:18px 20px;background:#eef4fd;border:1px solid #c4d8f3;border-radius:12px;max-width:680px;margin:12px 0 20px}.szm-customer-welcome>p:first-child{font-size:clamp(20px,4vw,27px);font-weight:700;margin:0 0 8px}.szm-order-card{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;border-top:1px solid #bfd2eb;padding-top:12px}.szm-order-card>span{font-size:15px}.szm-order-card>strong{font-size:clamp(25px,6vw,36px);letter-spacing:.04em;color:#172b83;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.szm-guide-address{max-width:700px;padding:20px;background:#fff;border:1px solid #d0dbeb;border-radius:12px}.szm-guide-help{display:flex;flex-wrap:wrap;gap:10px 20px;margin:12px 0;font-size:15px}.szm-guide-help a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.szm-background-note{color:#385b7c;background:#eef6fa;padding:12px;border-radius:8px}.booking-form-heading,.route-tier-heading{scroll-margin-top:110px}.booking-guided,.booking-wizard,.onsite-fields{overflow-anchor:none}.route-loading-heading>span{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.szm-guide-form-title{display:none!important}
@media(max-width:950px){html.szm-booking-active #szm-whatsapp-contact,html.szm-booking-active .mobile-contact-bar,html.szm-booking-active #szm-chat-launcher,html.szm-booking-active #szm-chat-widget,html.szm-booking-active .szm-chat-launcher,html.szm-booking-active .szm-chat-toggle{display:none!important}.booking-wizard-actions{position:static!important;padding-bottom:max(16px,env(safe-area-inset-bottom));margin-bottom:16px}.booking-guided{padding-bottom:90px!important}.szm-order-card{display:block}.szm-order-card>span,.szm-order-card>strong{display:block}.szm-guide-help{justify-content:space-between}}

@media(max-width:600px){.route-day-options{grid-template-columns:1fr!important}.route-day-choice,.route-day{width:100%!important}}
.szm-address-choice{box-sizing:border-box;max-width:700px;padding:20px;border:1px solid #d0dbeb;border-radius:14px;background:#fff}.szm-address-choice .field{display:flex;flex-direction:column;gap:8px}.szm-address-choice input,.szm-guide-address input{box-sizing:border-box;min-height:48px;border:1px solid #94a3b8;border-radius:8px;padding:12px}.szm-address-choice form>button{margin:12px 0}.szm-address-choice .szm-guide-options{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:16px 0}.szm-address-choice .booking-choice{display:flex;flex-direction:column;gap:6px;padding:16px;border:2px solid #9aafca;border-radius:12px;background:#f7faff;color:#15324b;font:inherit;overflow-wrap:anywhere;cursor:pointer}.szm-address-choice .booking-choice:hover,.szm-address-choice .booking-choice:focus-visible{background:#e6effb;border-color:#1b287f;outline:2px solid #1b287f;outline-offset:2px}.szm-address-choice .booking-choice:disabled{opacity:.65;cursor:wait}.szm-address-choice .booking-review{overflow-wrap:anywhere}.szm-address-choice .booking-wizard-actions{margin-top:20px}@media(max-width:600px){.szm-address-choice,.szm-guide-address{padding:16px}.szm-address-choice button{max-width:100%;white-space:normal}.szm-address-choice .primary{min-height:48px}}

.route-day .onsite-appointment-type{display:block;font-size:1.05em}.route-day .onsite-card-location{display:flex;flex-direction:column;gap:4px;margin:12px 0 8px;padding:10px 0;border-top:1px solid currentColor;white-space:normal;overflow-wrap:anywhere}.route-day .onsite-card-location>strong{font-size:.85em}.route-day .onsite-card-arrival{display:block;font-size:.9em;line-height:1.4;white-space:normal}.onsite-review-heading{padding:14px 16px;background:#eef6fa;border:1px solid #bfd2eb;border-radius:10px;margin-bottom:16px}.onsite-review-heading h3{margin:0 0 8px}.onsite-review-heading p{margin:0}

/* Compact customer choice: natural heights prevent label/text collisions. */
.booking-wizard .szm-compact-selection{font-size:15px;line-height:1.4}
.szm-compact-selection .onsite-selected-address{margin:0 0 10px;padding:10px 12px;background:#f0f4fb;border-radius:9px;overflow-wrap:anywhere;line-height:1.4;font-size:14px}
.szm-compact-selection .onsite-selected-address>strong{font-size:14px;color:#182983}
.szm-compact-selection .route-tier-heading{margin:10px 0 8px}
.szm-compact-selection .route-tier-heading h3{font-size:18px;line-height:1.25;margin:0}
.szm-compact-selection .route-binding-notice{display:grid;gap:2px;margin:0 0 10px;padding:8px 10px;border-width:1px;border-radius:8px;line-height:1.35}
.szm-compact-selection .route-binding-notice strong{font-size:14px}
.szm-compact-selection .route-binding-notice span{font-size:13px}
.booking-wizard .szm-compact-selection .route-day-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px;align-items:stretch}
.szm-compact-selection .route-day-choice{display:block;min-width:0;height:auto}
.booking-wizard .szm-compact-selection .route-day{box-sizing:border-box;position:static;display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;justify-content:normal;width:100%;height:auto!important;min-height:78px;max-height:none;white-space:normal;padding:9px;border-radius:9px;line-height:1.3;text-align:left}
.szm-compact-selection .route-day>button{position:static;flex:none;width:16px;height:16px;min-height:0;margin:2px 0 0;padding:0}
.szm-compact-selection .route-day>.szm-date-content{display:grid;position:static;gap:3px;margin:0;padding:0;min-width:0;line-height:1.3}
.szm-compact-selection .szm-date-content>strong,.szm-compact-selection .szm-date-content>span,.szm-compact-selection .szm-date-content>small{display:block;position:static;transform:none;height:auto;margin:0;padding:0;white-space:normal;line-height:1.3;overflow-wrap:anywhere}
.szm-compact-selection .szm-date-label{font-size:14px}
.szm-compact-selection .route-day .szm-date-time{font-size:13px}
.szm-compact-selection .route-day .szm-date-status{font-size:11px;line-height:1.25}
.booking-wizard .szm-compact-selection .route-choice-continue{width:100%;height:auto;min-height:44px;margin:8px 0 0;padding:9px 12px;font-size:15px;line-height:1.3}
.szm-compact-selection .route-reject-dates{display:block;box-sizing:border-box;width:100%;height:auto;min-height:44px;padding:9px 12px;margin:10px 0;border:1px solid #253880;border-radius:9px;background:#fff;color:#182983;font-family:inherit;font-weight:600;font-size:14px;line-height:1.3;white-space:normal;cursor:pointer}
.szm-compact-selection .route-fallback-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.szm-compact-selection .route-fallback-cards.has-three-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.szm-compact-selection .route-choice-card{display:grid;grid-template-columns:18px minmax(0,1fr);gap:3px 4px;align-content:start;align-items:center;text-align:left;box-sizing:border-box;min-width:0;width:100%;height:auto;min-height:90px;margin:0;padding:8px;border:1px solid #d4b345;border-radius:10px;background:#fff4c3;color:#645014;font-family:inherit;cursor:pointer;white-space:normal;font-weight:400}
.szm-compact-selection .route-choice-card.is-binding{background:#e5f6eb;border-color:#81b89b;color:#215d43}
.szm-compact-selection .route-choice-card .szm-booking-choice-icon{grid-column:1;width:21px;height:21px}
.szm-compact-selection .route-choice-card>strong{grid-column:2;min-width:0;font-size:13px;line-height:1.25;overflow-wrap:anywhere}
.szm-compact-selection .route-choice-card>span,.szm-compact-selection .route-choice-card>small{grid-column:1/-1;font-size:12px;line-height:1.3;margin:0}
.szm-compact-selection .route-choice-card .route-option-status{font-size:11px;font-weight:600}
.szm-compact-selection .booking-search-help{margin:8px 0;font-size:13px;line-height:1.45}
.szm-compact-selection .booking-search-help>summary{padding:6px 0;min-height:32px;cursor:pointer;color:#253880}
.szm-compact-selection .route-choice-card:focus-visible,.szm-compact-selection .route-reject-dates:focus-visible,.szm-compact-selection .route-day:focus-within{outline:2px solid #182983;outline-offset:2px}
@media(max-width:600px){
 html:has(.szm-compact-selection:not([hidden])) .szm-header-top{min-height:60px;padding:5px 4%;gap:12px}
 html:has(.szm-compact-selection:not([hidden])) .szm-brand{width:180px;max-width:58%}
 html:has(.szm-compact-selection:not([hidden])) .szm-brand img{width:100%;height:auto;max-height:54px;object-fit:contain}
 html:has(.szm-compact-selection:not([hidden])) .szm-menu-button{min-height:42px;padding:8px 10px;font-size:16px}
 .booking-guided:has(.szm-compact-selection:not([hidden])) .request-form{padding:12px}
 .szm-compact-selection .onsite-selected-address{padding:8px 10px;font-size:13px;margin-bottom:8px}
 .szm-compact-selection .route-tier-heading h3{font-size:16px}
 .szm-compact-selection .route-fallback-cards.has-three-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .szm-compact-selection .route-fallback-cards.has-three-options>.route-choice-card:last-child{grid-column:1/-1;min-height:0}
}

.szm-compact-selection .route-day-choice:only-child{grid-column:1/-1}
.szm-compact-selection .route-choice-card>.route-option-detail{display:none}
