/* Staging presentation only. No generic RepairPlugin field/state overrides. */
/* Native receipt only: the booking form and calendar selection are unaffected. */
html body.mr-refresh:has(#mobilrep-booking .mrf-receipt) #mobilrep-device-step #mr-repair-toolbar {
  display: none !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt {
  width: 100% !important;
  max-width: 920px !important;
  margin: 28px auto 48px !important;
  padding: clamp(24px, 4vw, 52px) !important;
  box-sizing: border-box;
  border: 1px solid #d8e5ed;
  border-top: 5px solid #0877c9;
  border-radius: 24px;
  background: #fff;
  color: #10283f;
  box-shadow: 0 18px 55px rgb(16 40 63 / 7%);
}
html body.mr-refresh #mobilrep-booking .mrf-receipt #confettijs { display: none !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt > .wp-repair-col-12,
html body.mr-refresh #mobilrep-booking .mrf-receipt .wp-repair-width-100 {
  float: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-intro { text-align: center; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 18px !important;
  padding: 9px 14px;
  border-radius: 999px;
  background: #e8f5ee;
  color: #176640 !important;
  font-size: 14px !important;
  font-weight: 700;
  line-height: 1.4 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-kicker::before {
  content: '';
  width: 7px;
  height: 12px;
  margin: -3px 3px 0 1px;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .thanks-heading {
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: #10283f !important;
  font-size: clamp(30px, 4vw, 44px) !important;
  font-weight: 750 !important;
  letter-spacing: -.035em !important;
  line-height: 1.16 !important;
  text-wrap: balance;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .thanks-heading-info {
  max-width: 550px;
  margin: 0 auto 30px !important;
  color: #4c6374 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .order-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: left;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt :is(.appointment-date, .address-box, .rp-payment-box) {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 24px !important;
  border: 1px solid #d8e5ed !important;
  border-radius: 16px !important;
  background: #f4f8fb !important;
  color: #10283f !important;
  text-align: left !important;
  box-shadow: none !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .appointment-date { order: 0; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .address-box { order: 1; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-payment-box { order: 2; grid-column: 1 / -1; }
html body.mr-refresh #mobilrep-booking .mrf-receipt :is(.inner-box, .shop-address) {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-label {
  margin: 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  color: #4c6374 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .actual-date {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #4c6374 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .actual-date .text-strong {
  display: block;
  color: #10283f !important;
  font-size: 22px !important;
  font-weight: 700;
  line-height: 1.45;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-address-title {
  margin: 0 0 8px !important;
  color: #10283f !important;
  font-size: 22px !important;
  font-weight: 700;
  line-height: 1.45 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt :is(.mrf-receipt-description, .rp-payment-box p) {
  margin: 0 !important;
  color: #4c6374 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review {
  margin: 24px 0 28px;
  padding: clamp(20px, 3vw, 28px);
  border: 1px solid #e9c878;
  border-left: 4px solid #bd7d16;
  border-radius: 16px;
  background: #fffaf0;
  color: #10283f;
  text-align: left;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review h2 {
  margin: 0 0 10px !important;
  color: #10283f !important;
  font-size: clamp(22px, 3vw, 26px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review :is(p, dt, dd) {
  margin: 0 !important;
  padding: 0 !important;
  color: #374e60 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  overflow-wrap: anywhere;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review .mrf-receipt-review-kicker {
  margin: 0 0 8px !important;
  color: #835307 !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review dl { display: grid; gap: 16px; margin: 22px 0 !important; padding: 0 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review dt { color: #10283f !important; font-weight: 750 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review dd { margin-top: 3px !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review .mrf-receipt-review-reason { color: #755016 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 22px; padding-top: 20px; border-top: 1px solid #ead9b4; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact p { flex: 1 1 260px; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; box-sizing: border-box; padding: 12px 18px; border-radius: 10px; background: #0877c9; color: #fff !important; font-size: 16px !important; font-weight: 700; line-height: 1.4; text-decoration: none; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact a:hover { background: #0665ac; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-a-normalize {
  display: inline-block;
  width: calc(50% - 9px);
  margin: 0 12px 0 0 !important;
  vertical-align: top;
  border-radius: 12px;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-a-normalize.rp-ical { margin-right: 0 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-v2-grey-box-shadow-thank-you {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  box-sizing: border-box;
  border: 1px solid #d8e5ed !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-a-normalize:hover .rp-v2-grey-box-shadow-thank-you { border-color: #0877c9 !important; background: #f4f8fb !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .wp-repair-repair-card { display: flex; align-items: center; gap: 12px; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .repair-img { width: 32px !important; height: 32px !important; margin: 0 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .repair-img img { width: 32px !important; height: 32px !important; object-fit: contain; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .text-all { padding: 0 !important; margin: 0 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .repair-mins { margin: 0 !important; color: #4c6374 !important; font-size: 14px !important; line-height: 1.4 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt .repair-name { margin: 0 !important; color: #10283f !important; font-size: 16px !important; line-height: 1.5 !important; font-weight: 650 !important; }
html body.mr-refresh #mobilrep-booking .mrf-receipt :is(a, button):focus-visible { outline: 3px solid #0877c9; outline-offset: 4px; }
@media (max-width: 640px) {
  /* Undo the model picker's narrow stage only once a receipt is present. */
  html body.mr-refresh .mobilrep-zone1-plugin-stage:has(.mrf-receipt) { width: 100% !important; max-width: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 12px 0 16px !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt { margin: 0 auto 16px !important; padding: 22px 14px 14px !important; border-radius: 16px; box-shadow: 0 8px 24px rgb(16 40 63 / 5%); }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-intro { text-align: left; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-kicker { margin-bottom: 12px !important; padding: 6px 10px; font-size: 12px !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .thanks-heading { margin-bottom: 10px !important; font-size: 28px !important; line-height: 1.15 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .thanks-heading-info { margin: 0 0 18px !important; font-size: 15px !important; line-height: 1.5 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .order-details { grid-template-columns: 1fr; gap: 10px; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt :is(.appointment-date, .address-box, .rp-payment-box) { padding: 14px !important; border-radius: 12px !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-label { margin-bottom: 6px !important; font-size: 12px !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .actual-date { font-size: 14px !important; line-height: 1.5 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt :is(.actual-date .text-strong, .mrf-receipt-address-title) { font-size: 20px !important; line-height: 1.35 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-description { font-size: 15px !important; line-height: 1.5 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review { min-width: 0; box-sizing: border-box; margin: 16px 0 !important; padding: 16px 13px !important; border-radius: 12px; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review h2 { font-size: 21px !important; margin-bottom: 8px !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review :is(p, dt, dd) { font-size: 15px !important; line-height: 1.5 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review dl { gap: 10px; margin: 14px 0 !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact { gap: 10px; margin-top: 14px; padding-top: 12px; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact p { flex-basis: 100%; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .mrf-receipt-review-contact a { width: 100%; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-a-normalize { display: block; width: 100%; box-sizing: border-box; margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
  html body.mr-refresh #mobilrep-booking .mrf-receipt .rp-v2-grey-box-shadow-thank-you { padding: 12px 14px !important; }
  /* The receipt already has direct help; omit the repeated promotional panel. */
  html body.mr-refresh:has(#mobilrep-booking .mrf-receipt) #mobilrep-zone-design-help { display: none !important; }
}
html body.mr-refresh {
  --mrf-ink: #10283f;
  --mrf-muted: #4c6374;
  --mrf-blue: #0877c9;
  --mrf-soft: #f4f8fb;
  --mrf-line: #d8e5ed;
  --mrf-radius: 20px;
}

html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mq-page, #mobilrep-terms, #mobilrep-service-area, #mobilrep-booking-entry, #mobilrep-portal-page) {
  color: var(--mrf-ink);
  -webkit-text-size-adjust: 100%;
}

html body.mr-refresh :is(.mr-wrap, .ma-wrap, .mc-wrap, .mb-wrap, .mw-wrap, .mq-wrap, .mt-wrap, .mrp-wrap) {
  max-width: 1180px !important;
}

html body.mr-refresh :is(#mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mq-page, #mobilrep-terms, #mobilrep-portal-page) h1 {
  max-width: 19ch;
  font-size: clamp(34px, 4.2vw, 58px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
}

html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mq-page, #mobilrep-terms) :is(h2, h3) {
  text-wrap: balance;
  line-height: 1.22;
}

html body.mr-refresh :is(.ma-hero, .mc-hero, .mb-hero, .mw-hero, .mq-hero, .mt-hero, .mrp-hero) {
  padding-block: clamp(36px, 5vw, 64px) !important;
  background: var(--mrf-soft) !important;
}

html body.mr-refresh :is(.ma-hero, .mc-hero, .mb-hero, .mw-hero, .mq-hero)::before {
  display: none !important;
}

html body.mr-refresh :is(.ma-hero-grid, .mc-hero-grid, .mb-hero-grid, .mw-hero-grid) {
  gap: clamp(24px, 4vw, 52px) !important;
  align-items: center;
}

html body.mr-refresh :is(.ma-lead, .mc-lead, .mb-lead, .mw-lead, .mq-lead, .mt-lead, .mrp-lead) {
  max-width: 58ch !important;
  color: var(--mrf-muted) !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}

html body.mr-refresh :is(.ma-section, .mc-main, .mb-section, .mw-section, .mq-section) {
  padding-block: clamp(36px, 5vw, 64px) !important;
}

html body.mr-refresh :is(.mc-help-card, .mc-contact-panel, .ma-env-panel, .ma-postcode-box, .mb-final-box, .mw-note, .mw-form-guide) {
  background: var(--mrf-soft) !important;
  border: 1px solid var(--mrf-line) !important;
  border-radius: var(--mrf-radius) !important;
  box-shadow: none !important;
  color: var(--mrf-ink) !important;
}

html body.mr-refresh :is(.mc-help-card, .mc-contact-panel, .ma-env-panel, .ma-postcode-box, .mb-final-box, .mw-note, .mw-form-guide) :is(h2, h3, strong) {
  color: var(--mrf-ink) !important;
}

html body.mr-refresh :is(.mc-help-card, .mc-contact-panel, .ma-env-panel, .ma-postcode-box, .mb-final-box, .mw-note, .mw-form-guide) :is(p, small, .mc-route span) {
  color: var(--mrf-muted) !important;
}

html body.mr-refresh :is(.mc-route > div, .mc-contact-action) {
  background: #fff !important;
  border: 1px solid var(--mrf-line) !important;
  box-shadow: none !important;
}

html body.mr-refresh :is(.mc-route b, .mc-contact-icon, .mc-contact-arrow) {
  color: var(--mrf-blue) !important;
  background: #e7f2fa !important;
}

html body.mr-refresh .ma-photo-caption h2 {
  color: #fff !important;
}

html body.mr-refresh .ma-photo-caption p {
  color: #eaf2f8 !important;
}

html body.mr-refresh :is(.ma-value, .mc-form-shell, .mb-form-shell, .mw-form-shell, .mw-card, .mw-exclusion, .mw-outcome-card, .mq-quality) {
  border-color: var(--mrf-line) !important;
  border-radius: var(--mrf-radius) !important;
  box-shadow: 0 5px 20px rgb(16 40 63 / 4%) !important;
}

html body.mr-refresh :is(.ma-faqs, .mw-faq, .mq-faq) :is(button, summary) {
  min-height: 52px;
  font-size: 16px !important;
  line-height: 1.4 !important;
}

html body.mr-refresh :is(.ma-faq-answer, .mw-faq, .mq-faq) p {
  color: var(--mrf-muted) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

html body.mr-refresh :is(#mobilrep-home, #mobilrep-contact, #mobilrep-about, #mobilrep-business, #mobilrep-warranty, #mq-page) :is(.mr-btn-primary, .ma-booking-link, .mb-button-primary, .mc-next, .mc-submit, .mw-button:not(.mw-button-secondary), .mq-book-form button) {
  min-height: 48px;
  border-radius: 12px !important;
  background: var(--mrf-blue) !important;
  color: #fff !important;
  text-transform: none !important;
  box-shadow: none !important;
  font-weight: 700;
}

html body.mr-refresh :is(.ma-postcode-box .ma-faq-contact, .mb-final-box .mb-button-ghost) {
  background: #fff !important;
  color: var(--mrf-blue) !important;
  border: 1px solid var(--mrf-line) !important;
}

html body.mr-refresh :is(#mobilrep-home, #mobilrep-contact, #mobilrep-about, #mobilrep-business, #mobilrep-warranty, #mq-page, #mobilrep-global-header) :is(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid #0877c9 !important;
  outline-offset: 3px !important;
}

html body.mr-refresh :is(.mc-topic-option input, .mc-contact-option input):focus-visible + span {
  outline: 3px solid #0877c9;
  outline-offset: 3px;
}

html body.mr-refresh :is(#mobilrep-contact, #mobilrep-business, #mobilrep-warranty) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]), textarea, select) {
  font-size: 16px !important;
  line-height: 1.4;
  border-radius: 10px;
  max-width: 100%;
}

html body.mr-refresh :is(.mc-field, .mb-field, .mw-field) label {
  font-size: 14px !important;
  line-height: 1.5;
}

html body.mr-refresh :is(.mc-help, .mb-help, .mw-help, .mw-privacy) {
  color: var(--mrf-muted) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

html body.mr-refresh .mrf-file-summary {
  display: block;
  margin: 8px 0 0;
  color: var(--mrf-muted);
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

html body.mr-refresh .mrf-file-summary[data-invalid="true"] {
  color: #a12a26;
}

html body.mr-refresh .mrf-form-link {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.6;
}

html body.mr-refresh .mrf-form-link a {
  color: var(--mrf-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}

html body.mr-refresh #mobilrep-home .mr-home-hero-v2__lead {
  max-width: 48ch !important;
  line-height: 1.6 !important;
}

html body.mr-refresh #mobilrep-home .mr-home-hero-v2__photo {
  border-radius: var(--mrf-radius) !important;
  box-shadow: 0 12px 32px rgb(16 40 63 / 8%) !important;
}

html body.mr-refresh #mobilrep-home .mr-make {
  cursor: default;
}

html body.mr-refresh #mq-page .mq-device-visual {
  display: none !important;
}

html body.mr-refresh #mq-page .mq-hero-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}

html body.mr-refresh #mq-page .mq-compare-controls {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  margin: 0 0 24px;
}

html body.mr-refresh #mq-page .mq-switch {
  padding: 4px;
  background: #eaf1f6;
  border-radius: 12px;
}

html body.mr-refresh #mq-page .mq-switch button {
  min-height: 46px;
  min-width: 108px;
  font-size: 16px;
}

html body.mr-refresh #mq-page .mq-switch button[aria-selected="true"] {
  background: var(--mrf-blue) !important;
  color: #fff !important;
}

html body.mr-refresh #mq-page .mq-compare-wrap {
  overflow-x: auto;
  border: 1px solid var(--mrf-line);
  border-radius: 14px;
}

html body.mr-refresh #mq-page .mq-table th {
  background: #edf5fb !important;
  color: var(--mrf-ink) !important;
}

html body.mr-refresh #mobilrep-warranty .mw-exclusion-icon {
  display: none !important;
}

html body.mr-refresh #mobilrep-warranty .mw-exclusion {
  padding: 24px !important;
}

html body.mr-refresh #mobilrep-warranty :is(.mw-exclusion, .mw-note) p {
  color: var(--mrf-muted) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

html body.mr-refresh #mobilrep-portal-page .mrp-hero {
  padding-block: 32px !important;
}

html body.mr-refresh #mobilrep-portal-page .mrp-benefits {
  display: none !important;
}

html body.mr-refresh #mobilrep-business .mb-dashboard {
  display: none !important;
}

html body.mr-refresh #mobilrep-business .mb-hero-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}

html body.mr-refresh #mobilrep-business .mb-hero-grid > div:first-child {
  max-width: 780px;
}

@media (min-width: 768px) {
  html body.mr-refresh #mobilrep-business .mb-hero-grid > div:first-child {
    width: 100%;
    justify-self: center;
    text-align: center;
  }

  html body.mr-refresh #mobilrep-business .mb-hero :is(h1, .mb-lead) {
    margin-inline: auto !important;
  }

  html body.mr-refresh #mobilrep-business :is(.mb-hero-actions, .mb-hero-meta) {
    justify-content: center !important;
  }
}

html body.mr-refresh #mobilrep-business .mb-portal-window {
  transform: none !important;
}

html body.mr-refresh #mobilrep-terms :is(.mt-section p, .mt-section li) {
  max-width: 74ch;
  line-height: 1.75 !important;
}

html body.mr-refresh #mobilrep-official-footer-global .mgf-links a {
  min-height: 36px;
  display: flex;
  align-items: center;
}

@media (max-width: 767px) {
  html body.mr-refresh :is(.mr-wrap, .ma-wrap, .mc-wrap, .mb-wrap, .mw-wrap, .mq-wrap, .mt-wrap, .mrp-wrap) {
    width: calc(100% - 32px) !important;
  }

  html body.mr-refresh :is(.ma-hero-grid, .mc-hero-grid, .mb-hero-grid, .mw-hero-grid, .ma-story, .mc-main-grid, .mw-two, .mw-exclusions, .mw-note-grid, .mw-outcome, .mw-form-shell) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
  }

  html body.mr-refresh :is(.ma-lead, .mc-lead, .mb-lead, .mw-lead, .mq-lead, .mt-lead, .mrp-lead) {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__copy {
    order: 0 !important;
    width: 100%;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__media {
    order: 1 !important;
    width: 100%;
  }

  html body.mr-refresh #mobilrep-home :is(.mr-home-hero-v2__title, .mr-mobile-hero h1) {
    font-size: clamp(34px, 9vw, 46px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px !important;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__actions .mr-btn {
    flex: 1 1 130px;
    min-height: 48px;
    font-size: 16px !important;
  }

  html body.mr-refresh #mobilrep-home .mr-home-hero-v2__proof {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px 16px !important;
    font-size: 12px !important;
  }

  html body.mr-refresh #mobilrep-about .ma-story-photo {
    display: none !important;
  }

  html body.mr-refresh #mobilrep-contact .mc-help-card {
    padding: 20px !important;
  }

  html body.mr-refresh #mobilrep-contact .mc-promise {
    display: none !important;
  }

  html body.mr-refresh #mobilrep-contact .mc-contact-side {
    position: static !important;
  }

  html body.mr-refresh #mobilrep-contact .mc-main-grid > .mc-form-shell {
    order: -1;
  }

  html body.mr-refresh :is(.mc-form-head, .mc-form-slide, .mb-form-head, .mw-form-shell form) {
    padding-inline: 20px !important;
  }

  html body.mr-refresh #mobilrep-warranty :is(.mw-exclusion, .mw-note, .mw-card) {
    padding: 20px !important;
  }

  html body.mr-refresh #mobilrep-warranty .mw-guarantee {
    padding: 24px !important;
  }

  html body.mr-refresh #mobilrep-warranty .mw-number {
    font-size: 52px !important;
  }

  html body.mr-refresh #mq-page .mq-compare-controls {
    flex-wrap: wrap;
    gap: 8px;
  }

  html body.mr-refresh #mq-page .mq-switch {
    display: flex;
    width: 100%;
  }

  html body.mr-refresh #mq-page .mq-switch button {
    flex: 1;
  }

  html body.mr-refresh #mobilrep-official-footer-global .mgf-links a {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mq-page) * {
    scroll-behavior: auto !important;
    transition-duration: 0s !important;
  }
}

/* Mobile audit: readable choices and usable contact/upload targets. */
html body.mr-refresh #mobilrep-contact .mc-topic-option span,
html body.mr-refresh #mobilrep-business .mb-option span b { font-size: 15px !important; line-height: 1.45 !important; }
html body.mr-refresh #mobilrep-contact :is(.mc-topic-option small, .mc-upload span, .mc-slide-nav-info),
html body.mr-refresh #mobilrep-business :is(.mb-option span small, .mb-consent, .mb-review-label, .mb-review-value),
html body.mr-refresh .mrf-form-link { font-size: 14px !important; line-height: 1.5 !important; }
html body.mr-refresh #mobilrep-contact .mc-upload strong { font-size: 15px !important; }
html body.mr-refresh #mobilrep-contact .mc-upload:focus-within,
html body.mr-refresh #mobilrep-service-area :is(input, button, a):focus-visible { outline: 3px solid #087cbd !important; outline-offset: 3px; }
html body.mr-refresh #mc-message-form .mrf-file-summary { grid-column: 1 / -1; overflow-wrap: anywhere; }
/* Keep contact-step structure across the two-column tablet layout. Headings,
   route textareas, consent/help and actions must not occupy one field cell. */
html body.mr-refresh #mobilrep-contact #mc-message-form .mc-form-slide {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
html body.mr-refresh #mobilrep-contact #mc-message-form .mc-form-slide > :is(.mc-slide-title, .mc-topic-grid, .mc-route-group, .mc-contact-choice, .mc-upload, .mrf-file-summary, .mc-file-status, .mc-send-error, .mc-submit-row, .mc-slide-nav),
html body.mr-refresh #mobilrep-contact #mc-message-form .mc-field-full {
  grid-column: 1 / -1 !important;
  min-width: 0;
}
html body.mr-refresh #mobilrep-contact #mc-message-form .mc-field {
  min-width: 0;
}
html body.mr-refresh #mobilrep-contact #mc-message-form .mrf-file-summary:empty {
  display: none;
}
@media (max-width: 620px) {
  html body.mr-refresh #mobilrep-contact #mc-message-form .mc-form-slide {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
html body.mr-refresh #mobilrep-business .mb-single-booking a { display: inline-flex !important; align-items: center; min-height: 44px !important; padding: 8px 4px !important; font-size: 14px !important; }
@media (max-width: 480px) {
  html body.mr-refresh #mobilrep-contact .mc-topic-grid,
  html body.mr-refresh #mobilrep-business .mb-options.three { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mobilrep-service-area, #mobilrep-booking-entry, #mq-page) *,
  html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mobilrep-service-area, #mobilrep-booking-entry, #mq-page) *::before,
  html body.mr-refresh :is(#mobilrep-home, #mobilrep-about, #mobilrep-contact, #mobilrep-business, #mobilrep-warranty, #mobilrep-service-area, #mobilrep-booking-entry, #mq-page) *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* The portal sidebar leaves only 614px for a native 915px list even on desktop.
   Cards adapt to their actual list width and preserve all six native fields. */
html body.mr-refresh .rp-portal-container :is(.rp-portal__dashboard-content, .rp-portal__dashboard-panel) {
  min-width: 0;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-list {
  container: mrf-portal-bookings / inline-size;
  display: grid;
  gap: 14px;
  min-width: 0 !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: visible;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-header {
  display: none;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start;
  gap: 16px 24px;
  min-width: 0 !important;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 18px;
  box-sizing: border-box;
  border: 1px solid #d8e5ed;
  border-radius: 14px;
  background: #fff;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 4px;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border: 0;
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-col::before {
  display: block;
  color: #4c6374;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--appt::before { content: 'Reference'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--datetime::before { content: 'Dato og tid'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--device::before { content: 'Enhed'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--repair::before { content: 'Reparation / Tilbehør'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--action::before { content: 'Status'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--price::before { content: 'Pris'; }
html body.mr-refresh .rp-portal-container .rp-portal__appt-col > span {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--appt {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 4px 10px;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-col--appt::before {
  grid-column: 1 / -1;
}
html body.mr-refresh .rp-portal-container :is(.rp-portal__appt-view-btn, .rp-portal__appt-page-btn) {
  min-height: 44px;
  min-width: 44px;
  font-size: 14px;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-view-btn {
  margin: 0;
  white-space: nowrap;
}
html body.mr-refresh .rp-portal-container :is(.rp-portal__appt-search-input, .rp-portal__appt-filter-input) {
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  font-size: 16px;
}
html body.mr-refresh .rp-portal-container .rp-portal__appt-pagination {
  flex-wrap: wrap;
}
@container mrf-portal-bookings (min-width: 520px) {
  html body.mr-refresh .rp-portal-container .rp-portal__appt-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* Escape also closes a submenu while its toggle retains focus or hover. */
@media (min-width: 1021px) {
  html body.mr-refresh #mobilrep-global-header .mgh-dropdown.mrf-dropdown-dismissed .mgh-submenu {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  html body.mr-refresh #mobilrep-global-header .mgh-dropdown.mrf-dropdown-dismissed .mgh-chevron {
    transform: none !important;
  }
}
