/* PM98-05: scoped additions to the frozen 04 service layout.
   The existing 04 .sl-calendar rules already supply the reviewed width:100%,
   left/right:auto, margin:0 and single-column .dd-c containment. Keep them.
   Never set bottom/position here: existing consent/obstruction code owns offsets. */
@media (max-width:1024px) {
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta {
    display:block!important;height:auto!important;padding:8px 12px!important;box-sizing:border-box;
  }
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta .sticky-cta-inner {
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;
  }
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta .sticky-cta-btn {
    display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;
    min-width:0!important;width:auto!important;min-height:48px!important;height:auto!important;
    padding:8px!important;font:600 12px/1.3 var(--rb-body-font)!important;
    white-space:normal!important;text-align:center;opacity:1!important;
    transform:none!important;animation:none!important;box-shadow:none!important;
    border:1px solid var(--rb-ink)!important;border-radius:5px!important;
  }
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta :is(.sticky-cta-text,.sticky-cta-call) {
    background:var(--rb-paper)!important;color:var(--rb-ink)!important;
  }
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta .sticky-cta-quote {
    background:var(--rb-ink)!important;color:var(--rb-on-ink)!important;
  }
  body.sl-shell[data-rb-brand="DDPM"] .mobile-sticky-cta .sticky-cta-btn:focus-visible {
    outline:3px solid var(--rb-paper)!important;outline-offset:2px;
  }
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .booking-calendar-widget {
  box-sizing:border-box;min-width:0;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-input-wrap,.dd-row2) {
  min-width:0;max-width:100%;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .dd-row2 {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .pm5-field-label {
  display:block;color:#fff;font-size:14px;font-weight:600;line-height:1.5;margin:0 0 8px;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .dd-req {display:none}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-input,.dd-textarea) {
  box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;font-size:16px!important;
  background:var(--rb-ink)!important;color:#fff!important;border:1px solid #b5c1cb!important;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-input,.dd-textarea)::placeholder {
  color:#e1e9ee!important;opacity:1;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-input,.dd-textarea):focus {
  background:var(--rb-ink)!important;border-color:#fff!important;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-input,.dd-textarea):focus-visible {
  outline:3px solid #fff!important;outline-offset:3px;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .dd-input.dd-invalid {
  border-color:#ffb4a9!important;
}
body.sl-shell[data-rb-brand="DDPM"] #sl-preferences :is(.dd-times-nav,.dd-week-nav) button {
  min-width:44px!important;min-height:44px!important;flex-shrink:0;
}
@media (max-width:480px) {
  body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .dd-row2 {
    grid-template-columns:minmax(0,1fr);gap:14px;
  }
  body.sl-shell[data-rb-brand="DDPM"] #sl-preferences .dd-form {gap:14px}
}
