/* Wall Dermatology — responsive overrides. Desktop is authored inline; most rules apply at max-width 1040px. */

/* Sitewide readability: one Jost body size, not a ladder of leftovers */
[style*="font-weight:300"],
[style*="font-weight: 300"] {
  font-weight: 400 !important;
}
[style*="font-size:14px"][style*="font-weight:300"],
[style*="font-size:14px"][style*="font-weight: 300"],
[style*="font-size: 14px"][style*="font-weight:300"],
[style*="font-size: 14px"][style*="font-weight: 300"],
[style*="font-size:14.5px"][style*="font-weight:300"],
[style*="font-size:14.5px"][style*="font-weight: 300"],
[style*="font-size: 14.5px"][style*="font-weight:300"],
[style*="font-size: 14.5px"][style*="font-weight: 300"],
[style*="font-size:15px"][style*="font-weight:300"],
[style*="font-size:15px"][style*="font-weight: 300"],
[style*="font-size: 15px"][style*="font-weight:300"],
[style*="font-size: 15px"][style*="font-weight: 300"],
[style*="font-size:15.5px"][style*="font-weight:300"],
[style*="font-size:15.5px"][style*="font-weight: 300"],
[style*="font-size: 15.5px"][style*="font-weight:300"],
[style*="font-size: 15.5px"][style*="font-weight: 300"],
[style*="font-size:16px"][style*="font-weight:300"],
[style*="font-size:16px"][style*="font-weight: 300"],
[style*="font-size: 16px"][style*="font-weight:300"],
[style*="font-size: 16px"][style*="font-weight: 300"],
[style*="font-size:16.5px"][style*="font-weight:300"],
[style*="font-size:16.5px"][style*="font-weight: 300"],
[style*="font-size: 16.5px"][style*="font-weight:300"],
[style*="font-size: 16.5px"][style*="font-weight: 300"],
[style*="font-size:18px"][style*="font-weight:300"],
[style*="font-size:18px"][style*="font-weight: 300"],
[style*="font-size: 18px"][style*="font-weight:300"],
[style*="font-size: 18px"][style*="font-weight: 300"] {
  font-size: 17px !important;
}

/* Mid-page booking ribbon: whisper + compact gold Book */
.wd-mid-cta {
  padding: 22px 28px !important;
}
.wd-mid-cta > [style*="inset:12px"],
.wd-mid-cta > [style*="inset: 12px"] {
  inset: 8px !important;
}
.wd-mid-cta > [style*="font-size:170px"],
.wd-mid-cta > [style*="font-size: 170px"] {
  display: block !important;
  font-size: 64px !important;
  left: 5% !important;
  right: auto !important;
  transform: none !important;
  bottom: -12px !important;
  opacity: .9;
  pointer-events: none;
}
.wd-mid-cta [style*="text-align:center"] > div:first-child,
.wd-mid-cta [style*="text-align: center"] > div:first-child {
  display: none !important;
}
.wd-mid-cta-row,
.wd-mid-cta [style*="gap:38px"],
.wd-mid-cta [style*="gap: 38px"] {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px 22px !important;
  max-width: 820px !important;
  margin: 0 auto !important;
}
.wd-mid-cta-row > span[style*="flex"],
.wd-mid-cta [style*="gap:38px"] > span[style*="flex"],
.wd-mid-cta [style*="gap: 38px"] > span[style*="flex"] {
  display: none !important;
}
.wd-mid-cta p {
  white-space: normal !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  max-width: 22em;
  margin: 0 auto !important;
  color: #F3F0EB !important;
  text-align: center;
}
.wd-mid-cta a {
  white-space: nowrap !important;
  width: auto !important;
  max-width: 100%;
  padding: 12px 22px !important;
  letter-spacing: .22em !important;
  font-size: 12px !important;
  gap: 8px !important;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 16px 32px -14px rgba(0, 0, 0, .55) !important;
}
.wd-mid-cta a > span:last-child {
  font-size: 15px !important;
}
@keyframes wd-review-rotate {
  0%, 18% { opacity: 1; visibility: visible; z-index: 1; }
  22%, 96% { opacity: 0; visibility: hidden; z-index: 0; }
  100% { opacity: 1; visibility: visible; z-index: 1; }
}
@keyframes wd-chip-4 {
  0%, 23% { opacity: 1; visibility: visible; z-index: 2; }
  25%, 100% { opacity: 0; visibility: hidden; z-index: 0; }
}
@keyframes wd-chip-3 {
  0%, 31% { opacity: 1; visibility: visible; z-index: 2; }
  33.4%, 100% { opacity: 0; visibility: hidden; z-index: 0; }
}
@media (max-width: 1040px) {
  html { -webkit-text-size-adjust: 100%; }
  body { overflow-x: hidden; }
  img, video { max-width: 100%; }

  /* older eyes — floor tiny labels */
  [style*="font-size:10px"], [style*="font-size: 10px"],
  [style*="font-size:10.5px"], [style*="font-size: 10.5px"],
  [style*="font-size:11px"], [style*="font-size: 11px"] {
    font-size: 12px !important;
  }
  .wd-office-cap span {
    font-size: 13px !important;
    letter-spacing: .16em !important;
  }

  /* header: compact bar (drawer nav is injected by mobile-nav.js) */
  header { padding: 12px 18px !important; position: sticky !important; top: 0 !important; z-index: 60 !important; }
  header[style*="position: fixed"] { position: fixed !important; }
  header img { height: 46px !important; }

  /* section gutters */
  section, footer { padding-left: 20px !important; padding-right: 20px !important; }
  section[style*="padding:104px"], section[style*="padding: 104px"],
  section[style*="padding:96px"], section[style*="padding: 96px"],
  section[style*="padding:92px"], section[style*="padding: 92px"],
  section[style*="padding:88px"], section[style*="padding: 88px"] {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }

  /* Mohs step carousel: fixed 440px stage overflows when the grid stacks — keep controls below copy */
  .wd-mohs-stages {
    height: auto !important;
    min-height: 0 !important;
    display: grid !important;
  }
  .wd-mohs-stages > .wd-mohs-stage {
    position: relative !important;
    inset: auto !important;
    grid-area: 1 / 1;
    gap: 22px !important;
    align-items: start !important;
  }
  .wd-mohs-stages > .wd-mohs-stage[style*="opacity:0"],
  .wd-mohs-stages > .wd-mohs-stage[style*="opacity: 0"] {
    visibility: hidden !important;
    pointer-events: none !important;
  }
  .wd-mohs-controls {
    position: relative;
    z-index: 2;
    margin-top: 28px !important;
  }

  /* every grid collapses to one column */
  [style*="grid-template-columns:"] { grid-template-columns: minmax(0, 1fr) !important; }
  [style*="grid-column:"] { grid-column: auto !important; }
  [style*="grid-row:"] { grid-row: auto !important; }

  /* fixed-width blocks become fluid */
  [style*="width: 440px"], [style*="width: 400px"], [style*="width: 420px"], [style*="width: 480px"], [style*="width: 520px"] { width: 100% !important; max-width: 100% !important; }
  [style*="min-width: 520px"], [style*="min-width:520px"],
  [style*="min-width: 480px"], [style*="min-width:480px"],
  [style*="min-width: 420px"], [style*="min-width:420px"],
  [style*="min-width: 400px"], [style*="min-width:400px"],
  [style*="min-width: 380px"], [style*="min-width:380px"],
  [style*="min-width: 360px"], [style*="min-width:360px"],
  [style*="min-width: 320px"], [style*="min-width:320px"],
  [style*="min-width: 300px"], [style*="min-width:300px"] { min-width: 0 !important; }
  [style*="flex: 0 0 296px"], [style*="flex: 0 0 340px"], [style*="flex: 0 0 380px"], [style*="flex: 0 0 420px"] { flex: 1 1 100% !important; border-left: 0 !important; padding-left: 0 !important; }
  [style*="flex: 0 0 400px"], [style*="flex: 0 0 440px"], [style*="flex: 0 0 460px"], [style*="flex: 0 0 480px"], [style*="flex: 0 0 520px"], [style*="flex: 0 0 560px"] { flex: 1 1 100% !important; max-width: 100% !important; min-width: 0 !important; }
  /* fixed photo frames → fluid, aspect-locked */
  [style*="width: 400px"][style*="height: 500px"], [style*="width: 440px"][style*="height: 520px"], [style*="width: 420px"][style*="height: 520px"], [style*="width: 480px"][style*="height: 560px"] { width: 100% !important; height: auto !important; aspect-ratio: 4 / 5; }
  image-slot[style*="height: 500px"], image-slot[style*="height: 520px"], image-slot[style*="height: 560px"], img[style*="height: 500px"], img[style*="height: 520px"] { width: 100% !important; height: 100% !important; }
  image-slot[style*="position: absolute"][style*="height: 520px"] { inset: 0 !important; }
  /* before/after: the BEFORE slot sits inside a narrower clip div — size it to the outer box via container units so both layers align */
  [style*="width: 440px"][style*="height: 520px"] { container-type: inline-size; }
  [style*="width: 440px"][style*="height: 520px"] > div[style*="overflow: hidden"] > image-slot { width: 100cqw !important; max-width: none !important; height: 100% !important; }
  [style*="max-width: 340px"] { max-width: 100% !important; }

  /* flex rows that hold cards wrap */
  [style*="display: flex"][style*="gap: 26px"], [style*="display: flex"][style*="gap: 32px"], [style*="display: flex"][style*="gap: 48px"], [style*="display: flex"][style*="gap: 64px"] { flex-wrap: wrap !important; }
  [style*="align-items: flex-end"][style*="justify-content: space-between"] { flex-direction: column !important; align-items: flex-start !important; }

  /* no nowrap on phones — keep footer hours as a true two-column timetable */
  [style*="white-space: nowrap"]:not(header *):not(nav *):not(footer *):not(.wd-mid-cta a):not(.wd-mid-cta p) { white-space: normal !important; }

  /* sticky sidebars flow */
  aside[style*="position: sticky"] { position: static !important; }

  /* big card paddings */
  [style*="padding: 52px 80px"], [style*="padding: 48px 72px"], [style*="padding: 56px 64px"], [style*="padding: 44px 56px"], [style*="padding: 44px 40px"], [style*="padding: 40px 48px"],
  [style*="padding:44px 52px 46px"], [style*="padding: 44px 52px 46px"] { padding-left: 22px !important; padding-right: 22px !important; }
  [style*="padding:44px 52px 46px"], [style*="padding: 44px 52px 46px"] { padding-top: 28px !important; padding-bottom: 28px !important; }
  [style*="padding: 34px 40px"], [style*="padding: 32px 34px"], [style*="padding: 30px 32px"] { padding-left: 20px !important; padding-right: 20px !important; }
  /* product “Known For” sidebar → full-width stack */
  [style*="flex:0 0 250px"], [style*="flex: 0 0 250px"] {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    border-left: 0 !important;
    margin-top: 8px;
    padding-top: 18px !important;
    border-top: 1px solid rgba(200,170,167,.24);
  }
  /* home FAQ answers — kill desktop left indent */
  [style*="padding:2px 40px 28px 66px"], [style*="padding: 2px 40px 28px 66px"] {
    padding: 8px 0 22px 0 !important;
  }
  /* cosmetic treatment-plan guide */
  .wd-guide-modal {
    align-items: flex-start !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 20px 14px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }
  /* display type set as divs (not h1/h2) */
  [style*="font-size: 50px"], [style*="font-size: 52px"], [style*="font-size: 54px"], [style*="font-size: 56px"], [style*="font-size: 58px"], [style*="font-size: 60px"], [style*="font-size: 64px"] { font-size: clamp(32px, 9vw, 42px) !important; }
  /* section titles: keep short lines (e.g. Never Just Another Appointment.) on one row on phones */
  [style*="font-size: 40px"], [style*="font-size: 42px"], [style*="font-size: 44px"], [style*="font-size: 46px"] { font-size: clamp(24px, 6.4vw, 32px) !important; }
  [style*="font-size: 34px"], [style*="font-size: 36px"] { font-size: clamp(22px, 6vw, 28px) !important; }
  /* eyebrow labels — soft tracking; allow wrap so hubs don't clip on 360px */
  [style*="letter-spacing: .38em"], [style*="letter-spacing: 0.38em"], [style*="letter-spacing: .4em"], [style*="letter-spacing: 0.4em"], [style*="letter-spacing: .44em"], [style*="letter-spacing: 0.44em"] {
    letter-spacing: .18em !important;
    white-space: normal !important;
    text-align: center;
  }
  /* body copy on phones — keep the sitewide 17px body readable */
  p[style*="font-size:14px"], p[style*="font-size: 14px"],
  p[style*="font-size:14.5px"], p[style*="font-size: 14.5px"],
  p[style*="font-size:15px"], p[style*="font-size: 15px"],
  p[style*="font-size:15.5px"], p[style*="font-size: 15.5px"],
  p[style*="font-size:16px"], p[style*="font-size: 16px"],
  p[style*="font-size:16.5px"], p[style*="font-size: 16.5px"],
  p[style*="font-size:18px"], p[style*="font-size: 18px"] { line-height: 1.75 !important; }

  /* type scale */
  h1 { font-size: clamp(34px, 9.5vw, 46px) !important; }
  h2 { font-size: clamp(24px, 6.4vw, 32px) !important; }
  h3 { font-size: clamp(20px, 5.5vw, 24px) !important; }
  [style*="font-size:180px"], [style*="font-size: 180px"],
  [style*="font-size:190px"], [style*="font-size: 190px"],
  [style*="font-size:200px"], [style*="font-size: 200px"],
  [style*="font-size:210px"], [style*="font-size: 210px"],
  [style*="font-size:220px"], [style*="font-size: 220px"],
  [style*="font-size:240px"], [style*="font-size: 240px"],
  [style*="font-size:250px"], [style*="font-size: 250px"],
  [style*="font-size:260px"], [style*="font-size: 260px"],
  [style*="font-size:280px"], [style*="font-size: 280px"] {
    font-size: 72px !important;
  }
  /* home stat strip: stack the three stats */
  [style*="flex: 1 1 140px"] { flex: 1 1 100% !important; padding: 16px 0 !important; border-left: 0 !important; border-right: 0 !important; border-bottom: 1px solid #ded4c2; }
  [style*="flex: 1 1 140px"]:last-child { border-bottom: 0; }
  [style*="flex: 1 1 140px"] > div:first-child { font-size: 30px !important; }
  /* stacked two-column bands: don't leave a 64px hole between the quote and the next section */
  [style*="gap:64px"], [style*="gap: 64px"] { gap: 28px !important; }
  [style*="margin:0 auto 52px"], [style*="margin: 0 auto 52px"] { margin-bottom: 28px !important; }
  [style*="inset: 26px"] { inset: 14px !important; }
  [style*="font-size: 26px"][style*="letter-spacing: .34em"], [style*="font-size: 26px"][style*="letter-spacing: 0.34em"] { font-size: 18px !important; }
  [style*="font-size: 30px"][style*="italic"] { font-size: 22px !important; }

  /* team / roster portraits — one per row, mid-size on phones (~60% up from prior balance) */
  .wd-team-portrait {
    width: 269px !important;
    max-width: 77vw !important;
    height: auto !important;
    aspect-ratio: 230 / 270 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .wd-team-portrait img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  [style*="grid-template-columns:repeat(auto-fit,230px)"],
  [style*="grid-template-columns: repeat(auto-fit, 230px)"],
  [style*="grid-template-columns:repeat(5,230px)"],
  [style*="grid-template-columns: repeat(5, 230px)"] {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    gap: 32px 0 !important;
    max-width: 420px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* gold corner accents scale with the smaller frame */
  [style*="top:-10px"][style*="left:-10px"][style*="width:70px"][style*="height:70px"],
  [style*="top: -10px"][style*="left: -10px"][style*="width: 70px"][style*="height: 70px"] {
    width: 44px !important;
    height: 44px !important;
    top: -6px !important;
    left: -6px !important;
  }
  /* names under portraits stay readable, not oversized */
  [style*="grid-template-columns:repeat(auto-fit,230px)"] [style*="font-size:26px"],
  [style*="grid-template-columns:repeat(auto-fit,230px)"] [style*="font-size: 26px"],
  [style*="grid-template-columns:repeat(5,230px)"] [style*="font-size:23px"],
  [style*="grid-template-columns:repeat(5,230px)"] [style*="font-size: 23px"] {
    font-size: 20px !important;
  }


  /* booking path chooser — stack Medical / Cosmetics full-width */
  .wd-care-chooser {
    align-items: flex-start !important;
    justify-content: center !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 72px 16px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .wd-care-chooser-inner {
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto;
    padding: 0 !important;
  }
  .wd-care-chooser-inner > [style*="font-style:italic"],
  .wd-care-chooser-inner > [style*="font-style: italic"] {
    font-size: 26px !important;
    margin-bottom: 22px !important;
    line-height: 1.25 !important;
  }
  .wd-care-chooser-cards {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .wd-care-chooser-cards > a {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 26px 20px !important;
    gap: 10px !important;
    transform: none !important;
  }
  .wd-care-chooser-cards > a .chooser-label {
    font-size: 28px !important;
    letter-spacing: .06em !important;
  }
  .wd-care-chooser-cards > a [style*="max-width:240px"],
  .wd-care-chooser-cards > a [style*="max-width: 240px"] {
    max-width: 100% !important;
  }
  .wd-care-chooser-inner > div[style*="margin-top:36px"],
  .wd-care-chooser-inner > div[style*="margin-top: 36px"] {
    margin-top: 22px !important;
  }
  .wd-booking-modal {
    padding: 18px 12px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* booking module */
  /* booking module — only the MEDICAL/COSMETIC tabs, not the diamond accent span inside */
  [style*="top: -26px"][style*="translateX(-50%)"] a,
  [style*="top: -26px"][style*="translateX(-50%)"] span[style*="padding:15px 0"] { width: 132px !important; font-size: 11px !important; }
  [style*="padding: 52px 32px 26px"] { padding: 48px 16px 22px !important; }

  /* hero heights + buttons */
  [style*="min-height: 100vh"] { min-height: auto !important; }
  [style*="height: 100vh"]:not(video):not([style*="position: fixed"]) { height: auto !important; min-height: 78vh; }
  a[style*="padding: 16px 34px"], a[style*="padding: 16px 36px"], a[style*="padding: 17px 38px"], a[style*="padding: 18px 40px"] { padding: 15px 24px !important; width: 100%; justify-content: center; text-align: center; }
  [style*="display: flex"][style*="gap: 22px"][style*="flex-wrap: wrap"] { flex-direction: column; align-items: stretch !important; }
  /* tables / metrics rows */
  [style*="min-width: 200px"], [style*="min-width: 220px"] { min-width: 100% !important; border-right: 0 !important; border-bottom: 1px solid rgba(203,185,143,.18); }
  /* team photo frame overlays */
  [style*="width:230px"][style*="height:270px"] img,
  [style*="width: 230px"][style*="height: 270px"] img,
  .wd-team-portrait img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* CTA bands: hairline · text · button · hairline → stacked, centered */
  [style*="justify-content: center"][style*="gap: 38px"][style*="flex-wrap: wrap"] { flex-direction: column !important; gap: 16px !important; }
  [style*="justify-content: center"][style*="gap: 38px"][style*="flex-wrap: wrap"] > span[style*="flex: 1"] { display: none !important; }
  [style*="justify-content: center"][style*="gap: 38px"][style*="flex-wrap: wrap"] > div { text-align: center !important; }
  [style*="justify-content: center"][style*="gap: 38px"][style*="flex-wrap: wrap"] > a { width: auto !important; }
  .wd-mid-cta { padding: 18px 16px !important; }
  .wd-mid-cta > [style*="font-size:170px"],
  .wd-mid-cta > [style*="font-size: 170px"] {
    display: none !important;
  }
  .wd-mid-cta-row,
  .wd-mid-cta [style*="gap:38px"],
  .wd-mid-cta [style*="gap: 38px"] {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .wd-mid-cta p {
    white-space: normal !important;
    font-size: 20px !important;
    max-width: 18em;
  }
  .wd-mid-cta a { width: auto !important; min-width: 148px; font-size: 12px !important; }
  /* before/after drag strip — finger-sized */
  [style*="touch-action:none"][style*="width:34px"],
  [style*="touch-action: none"][style*="width: 34px"],
  [style*="touch-action:none"][style*="width: 34px"],
  [style*="touch-action: none"][style*="width:34px"] {
    width: 48px !important;
  }
  [style*="font-size: 160px"], [style*="font-size: 170px"] { font-size: 72px !important; bottom: -18px !important; }
  [style*="font-size: 30px"][style*="white-space: nowrap"] { font-size: 26px !important; }
  /* sparkles: keep off the text (Chrome may serialize the shorthand as animation-name) */
  [style*="sparkle"] { display: none !important; }

  /* service-hero tag row: diamonds wrap into a ragged stack — hide them and wrap as a centered list */
  section [style*="margin-top:22px"][style*="flex-wrap"][style*="gap:16px"],
  section [style*="margin-top: 22px"][style*="flex-wrap"][style*="gap: 16px"] {
    gap: 8px 18px !important;
    row-gap: 10px !important;
  }
  section [style*="margin-top:22px"][style*="flex-wrap"][style*="gap:16px"] > span[style*="width:4px"],
  section [style*="margin-top: 22px"][style*="flex-wrap"][style*="gap: 16px"] > span[style*="width:4px"],
  section [style*="margin-top:22px"][style*="flex-wrap"][style*="gap:16px"] > span[style*="width: 4px"],
  section [style*="margin-top: 22px"][style*="flex-wrap"][style*="gap: 16px"] > span[style*="width: 4px"] {
    display: none !important;
  }
  section [style*="margin-top:22px"][style*="flex-wrap"][style*="gap:16px"] > span,
  section [style*="margin-top: 22px"][style*="flex-wrap"][style*="gap: 16px"] > span {
    letter-spacing: .14em !important;
    text-align: center;
  }
  /* hero gold glow — keep it, don't let a 620px blob wash the chip frame */
  section > div[style*="width:620px"][style*="height:380px"],
  section > div[style*="width: 620px"][style*="height: 380px"] {
    width: 220px !important;
    height: 140px !important;
    top: -64px !important;
    opacity: .5;
  }

  /* Google reviews: one rotating card on phones. Desktop keeps the marquee. */
  .wd-reviews-track {
    animation: none !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }
  .wd-reviews-track > [style*="display: flex"],
  .wd-reviews-track > [style*="display:flex"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    gap: 0 !important;
  }
  .wd-reviews-track > div:nth-child(2) {
    display: none !important;
  }
  .wd-reviews-track [style*="width:400px"],
  .wd-reviews-track [style*="width: 400px"] {
    grid-area: 1 / 1;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    opacity: 0;
    visibility: hidden;
    animation: wd-review-rotate 20s ease-in-out infinite;
  }
  .wd-reviews-track > div:first-child > div:nth-child(1) { animation-delay: 0s; }
  .wd-reviews-track > div:first-child > div:nth-child(2) { animation-delay: 5s; }
  .wd-reviews-track > div:first-child > div:nth-child(3) { animation-delay: 10s; }
  .wd-reviews-track > div:first-child > div:nth-child(4) { animation-delay: 15s; }
  .wd-reviews-fade {
    display: none !important;
  }
  .wd-reviews-head {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  @media (prefers-reduced-motion: reduce) {
    .wd-reviews-track [style*="width:400px"],
    .wd-reviews-track [style*="width: 400px"] {
      animation: none !important;
      opacity: 0 !important;
      visibility: hidden !important;
    }
    .wd-reviews-track > div:first-child > div:nth-child(1) {
      opacity: 1 !important;
      visibility: visible !important;
    }
  }

  /* hero value chips: readable 2×2 — show every proof point */
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"],
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 28px !important;
    gap: 0 !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"] > div,
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] > div {
    grid-area: auto !important;
    width: 100% !important;
    box-sizing: border-box;
    border-right: 0 !important;
    padding: 16px 12px !important;
    text-align: center;
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"] > div:nth-child(odd),
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] > div:nth-child(odd) {
    border-right: 1px solid rgba(255,255,255,.14) !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"] > div:nth-child(-n+2),
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] > div:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"]:has(> :nth-child(3):last-child) > div:nth-child(3),
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"]:has(> :nth-child(3):last-child) > div:nth-child(3) {
    grid-column: 1 / -1;
    border-right: 0 !important;
    border-bottom: 0 !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"] > div > div:first-child,
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] > div > div:first-child {
    font-size: 20px !important;
  }
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top:36px"] > div > div:last-child,
  [style*="inline-flex"][style*="flex-wrap"][style*="backdrop-filter"][style*="margin-top: 36px"] > div > div:last-child {
    letter-spacing: .14em !important;
    font-size: 12px !important;
  }

  /* footer — one column, even rhythm, compact credentials.
     Extra bottom pad clears the fixed Book Online bar so "made from rain" stays visible. */
  footer {
    padding: 48px 22px calc(96px + env(safe-area-inset-bottom, 0px)) !important;
  }
  footer > div:first-child {
    width: min(140%, 520px) !important;
    height: 180px !important;
    top: -90px !important;
  }
  footer > div:nth-of-type(2) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding-bottom: 28px !important;
  }
  footer > div:nth-of-type(2) > div {
    max-width: none !important;
    min-width: 0 !important;
  }
  footer > div:nth-of-type(2) > div > div[style*="letter-spacing"] {
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid rgba(203,185,143,.22);
    letter-spacing: .26em !important;
  }
  footer img[alt="Wall Dermatology"] {
    height: 42px !important;
    margin-bottom: 14px !important;
  }
  footer > div:nth-of-type(2) p {
    font-size: 17px !important;
    line-height: 1.7 !important;
  }
  footer > div:nth-of-type(2) [style*="line-height:2"],
  footer > div:nth-of-type(2) [style*="line-height: 2"] {
    line-height: 1.65 !important;
  }
  footer > div:nth-of-type(2) [style*="flex-direction:column"],
  footer > div:nth-of-type(2) [style*="flex-direction: column"] {
    gap: 2px !important;
  }
  footer > div:nth-of-type(2) a {
    min-height: 36px;
    display: flex;
    align-items: center;
  }
  footer [style*="white-space:nowrap"],
  footer [style*="white-space: nowrap"] {
    display: grid !important;
    grid-template-columns: 7.5em 1fr !important;
    justify-content: start !important;
    gap: 8px 14px !important;
    white-space: nowrap !important;
    width: 100% !important;
    max-width: 280px;
  }
  footer div:has(> a[href*="instagram"]) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
  }
  footer a[href*="instagram"],
  footer a[href*="facebook"],
  footer a[href*="g.co"] {
    flex: 1 1 0;
    min-width: 0;
    min-height: 0 !important;
    box-sizing: border-box;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    border: none;
    padding: 10px 6px;
    gap: 6px !important;
    font-size: 11px !important;
    letter-spacing: .1em;
    line-height: 1.25;
    text-transform: uppercase;
    white-space: normal;
  }
  footer a[href*="instagram"] svg,
  footer a[href*="facebook"] svg,
  footer a[href*="g.co"] svg {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
  }
  footer > div:nth-of-type(3) {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px 18px !important;
    padding: 22px 0 18px !important;
  }
  footer > div:nth-of-type(3) img {
    height: 32px !important;
    width: auto !important;
    max-width: 30% !important;
    max-height: 36px !important;
    object-fit: contain !important;
    mix-blend-mode: screen !important;
    opacity: .9 !important;
    flex: 0 1 auto !important;
    min-width: 72px;
  }
  footer > div:nth-of-type(4) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 12px !important;
    padding-top: 18px !important;
    padding-bottom: 8px !important;
  }
  footer > div:nth-of-type(4) > div:first-child {
    display: contents !important;
  }
  footer > div:nth-of-type(4) > div:first-child > span {
    display: block;
    order: 1;
    line-height: 1.55;
    font-size: 11.5px !important;
    max-width: 280px;
  }
  footer > div:nth-of-type(4) > div:last-child {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px 14px !important;
    width: auto;
    max-width: 320px;
    order: 2;
  }
  footer > div:nth-of-type(4) > div:last-child a {
    min-height: 0 !important;
    padding: 0 !important;
    font-size: 11.5px !important;
    letter-spacing: .02em;
    white-space: nowrap;
  }
  footer > div:nth-of-type(4) a[href*="rain.ceo"] {
    order: 3;
    margin-top: 4px;
  }

  /* home About float — less aggressive overlap on phones */
  [style*="transform:translateY(-90px)"],
  [style*="transform: translateY(-90px)"] {
    transform: translateY(-40px) !important;
    margin-bottom: -40px !important;
    outline-offset: 3px !important;
    padding: 36px 24px !important;
  }

  /* home: services before Dr. Wall bio on mobile */
  .wd-home-mid {
    display: flex;
    flex-direction: column;
  }
  .wd-home-services { order: 1; }
  .wd-home-medallion { order: 2; }
  .wd-home-bio { order: 3; }

  /* tablet: use the width — 2-col team + hubs */
  @media (min-width: 700px) {
    [style*="grid-template-columns:repeat(auto-fit,230px)"],
    [style*="grid-template-columns: repeat(auto-fit, 230px)"],
    [style*="grid-template-columns:repeat(5,230px)"],
    [style*="grid-template-columns: repeat(5, 230px)"] {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      max-width: 560px !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }
    [style*="width:230px"][style*="height:270px"],
    [style*="width: 230px"][style*="height: 270px"],
    .wd-team-portrait {
      width: 282px !important;
      max-width: 100% !important;
    }
    [style*="grid-template-columns:repeat(auto-fill,minmax(340px,1fr))"],
    [style*="grid-template-columns: repeat(auto-fill, minmax(340px, 1fr))"] {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    [style*="grid-template-columns:repeat(3,1fr)"],
    [style*="grid-template-columns: repeat(3, 1fr)"] {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}
@media (max-width: 560px) {
  footer > div:nth-of-type(2) {
    grid-template-columns: 1fr !important;
  }
}

/* ---- Red Spot scheduler skin (Booking Module helmet is stripped on inline) ----
   Target RSI / Material class names only — substring matches like [class*="outline"]
   and [class*="slot"] double-border Material fields and box the whole form. */
.wd-rsi rsi-online-scheduling{display:block;min-height:120px}
.wd-rsi .rsi-online-scheduling{background:transparent!important;color:#2C3A47!important;max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;min-height:0!important;font-family:'Jost',sans-serif!important}
.wd-rsi .rsi-online-scheduling,.wd-rsi .rsi-online-scheduling *{box-sizing:border-box}
.wd-rsi .rsi-online-scheduling .rsi-xxl-text,.wd-rsi .rsi-online-scheduling h1,.wd-rsi .rsi-online-scheduling h2{font-family:'Cormorant Garamond',serif!important;font-weight:500!important;color:#2C3A47!important;letter-spacing:0!important;text-transform:none!important;font-size:clamp(26px,3.2vw,34px)!important;line-height:1.15!important;margin:0 0 10px!important}
.wd-rsi .rsi-online-scheduling .rsi-os-welcome-message,.wd-rsi .rsi-online-scheduling .rsi-light-text{font-family:'Jost',sans-serif!important;font-weight:300!important;font-size:14.5px!important;line-height:1.55!important;color:#5a6570!important;margin:0 0 22px!important}
.wd-rsi .rsi-online-scheduling .rsi-label,.wd-rsi .rsi-online-scheduling label.rsi-label{display:block;font-family:'Jost',sans-serif!important;font-size:11px!important;font-weight:500!important;letter-spacing:.22em!important;text-transform:uppercase!important;color:#8a8272!important;margin:0 0 8px!important}
.wd-rsi .rsi-online-scheduling .rsi-form-control{margin:0 0 16px!important;max-width:100%}
.wd-rsi .rsi-online-scheduling a,.wd-rsi .rsi-online-scheduling .action-text{color:#59718F!important;text-decoration:none!important;border-bottom:1px solid rgba(203,185,143,.55);cursor:pointer;font-weight:400!important;letter-spacing:.04em}
.wd-rsi .rsi-online-scheduling a:hover,.wd-rsi .rsi-online-scheduling .action-text:hover{color:#2C3A47!important;border-bottom-color:#cbb98f}
.wd-rsi .rsi-online-scheduling img.rsi-logo{display:none!important}

/* Kill nested borders from prior skin + Material outline stacking */
.wd-rsi .rsi-online-scheduling .rsi-slot-groups-container,
.wd-rsi .rsi-online-scheduling .slots-form-container,
.wd-rsi .rsi-online-scheduling .slots-form,
.wd-rsi .rsi-online-scheduling .groups-container,
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field,
.wd-rsi .rsi-online-scheduling .mat-mdc-text-field-wrapper,
.wd-rsi .rsi-online-scheduling .mdc-text-field,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__leading,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__notch,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__trailing{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;outline:none!important}
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__leading,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__notch,
.wd-rsi .rsi-online-scheduling .mdc-notched-outline__trailing{border-color:transparent!important}

/* Single clean field chrome on Material selects */
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field{width:100%;display:block}
.wd-rsi .rsi-online-scheduling .mat-mdc-text-field-wrapper.mdc-text-field--outlined,
.wd-rsi .rsi-online-scheduling .mdc-text-field--outlined{border:1px solid rgba(44,58,71,.22)!important;border-radius:2px!important;background:#fff!important;padding:0 14px!important;min-height:48px!important;transition:border-color .25s ease,box-shadow .25s ease}
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field:hover .mdc-text-field--outlined,
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field:hover .mat-mdc-text-field-wrapper{border-color:rgba(203,185,143,.95)!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field.mat-focused .mdc-text-field--outlined,
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field.mat-focused .mat-mdc-text-field-wrapper{border-color:#cbb98f!important;box-shadow:0 0 0 3px rgba(203,185,143,.16)!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-select-value,
.wd-rsi .rsi-online-scheduling .mat-mdc-select-min-line,
.wd-rsi .rsi-online-scheduling .mat-mdc-select-placeholder{font-family:'Jost',sans-serif!important;font-size:14px!important;font-weight:400!important;letter-spacing:.06em!important;text-transform:none!important;color:#2C3A47!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-select-placeholder{color:#8a8272!important;font-weight:300!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-select-arrow{color:#8a8272!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-form-field-subscript-wrapper{display:none!important}

/* Native selects (timezone / inline) — one border only */
.wd-rsi .rsi-online-scheduling select,
.wd-rsi .rsi-online-scheduling input:not([type=checkbox]):not([type=radio]):not(.mat-mdc-input-element),
.wd-rsi .rsi-online-scheduling textarea{width:100%;max-width:100%;background:#fff!important;border:1px solid rgba(44,58,71,.22)!important;border-radius:2px!important;padding:12px 14px!important;font-family:'Jost',sans-serif!important;font-size:14px!important;font-weight:400!important;letter-spacing:.04em!important;color:#2C3A47!important;outline:none!important;box-shadow:none!important}
.wd-rsi .rsi-online-scheduling select:focus,
.wd-rsi .rsi-online-scheduling input:not(.mat-mdc-input-element):focus,
.wd-rsi .rsi-online-scheduling textarea:focus{border-color:#cbb98f!important;box-shadow:0 0 0 3px rgba(203,185,143,.16)!important}
.wd-rsi .rsi-online-scheduling .mat-mdc-input-element,
.rsi-scheduling-popup .mat-mdc-input-element{border:0!important;box-shadow:none!important;background:transparent!important;outline:none!important;padding-left:0!important;padding-right:0!important;width:100%!important}
.wd-rsi .rsi-online-scheduling .inline-select-wrapper,
.wd-rsi .rsi-online-scheduling .inline-select-control{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 18px}
.wd-rsi .rsi-online-scheduling .inline-select-label{font-size:11px!important;font-weight:500!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:#8a8272!important}
.wd-rsi .rsi-online-scheduling .inline-select-value,
.wd-rsi .rsi-online-scheduling app-inline-select,
.wd-rsi .rsi-online-scheduling app-timezone-selector{font-size:13px!important;font-weight:400!important;color:#2C3A47!important;letter-spacing:.02em!important;text-transform:none!important}

/* Provider cards — RSI floats a 200×151 background-div avatar; never shrink only
   the wrapper or the photo overflows onto the address. Use a 2-col grid instead. */
.wd-rsi .rsi-online-scheduling .provider-container{display:grid!important;grid-template-columns:112px minmax(0,1fr);column-gap:18px;row-gap:6px;align-items:start;background:#fff!important;border:1px solid rgba(185,169,142,.38)!important;border-radius:3px!important;padding:20px 22px!important;margin:0 0 14px!important;box-shadow:0 18px 40px -28px rgba(44,58,71,.35)!important;overflow:hidden}
.wd-rsi .rsi-online-scheduling .bio-information,
.wd-rsi .rsi-online-scheduling .bio-information-main{display:contents!important}
.wd-rsi .rsi-online-scheduling .rsi-provider-avatar{grid-column:1;grid-row:1 / span 2;float:none!important;position:relative!important;width:112px!important;height:140px!important;margin:0!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(185,169,142,.35)!important;border-radius:2px!important;background:#F3F0EB}
.wd-rsi .rsi-online-scheduling .rsi-provider-avatar app-user-avatar{display:block!important;width:112px!important;height:140px!important}
.wd-rsi .rsi-online-scheduling .rsi-provider-avatar app-user-avatar > div,
.wd-rsi .rsi-online-scheduling .rsi-provider-avatar .rsi-text-avatar{width:112px!important;height:140px!important;max-width:112px!important;max-height:140px!important;margin:0!important;border-radius:0!important;background-size:cover!important;background-position:center top!important}
.wd-rsi .rsi-online-scheduling .bio-information-main > div:not(.rsi-provider-avatar){grid-column:2;grid-row:1;min-width:0;align-self:end;padding-bottom:2px}
.wd-rsi .rsi-online-scheduling .rsi-provider-name,
.wd-rsi .rsi-online-scheduling .bio-information-main .rsi-provider-name{font-family:'Cormorant Garamond',serif!important;font-size:26px!important;font-weight:500!important;color:#2C3A47!important;letter-spacing:0!important;text-transform:none!important;text-align:left!important;line-height:1.15!important;margin:0!important;width:auto!important}
.wd-rsi .rsi-online-scheduling .provider-locations{grid-column:2;grid-row:2;display:flex!important;flex-direction:column!important;width:auto!important;max-width:100%;min-width:0;margin:0!important}
.wd-rsi .rsi-online-scheduling .provider-location{width:100%;max-width:100%}
.wd-rsi .rsi-online-scheduling .location-name{font-size:14px!important;font-weight:500!important;color:#2C3A47!important;line-height:1.4!important;margin:0 0 2px!important}
.wd-rsi .rsi-online-scheduling .provider-location > div:not(.location-name):not(.location-slots):not(.next-date-info){font-size:13.5px!important;font-weight:300!important;color:#5a6570!important;line-height:1.45!important}
.wd-rsi .rsi-online-scheduling .next-date-info{align-items:flex-start!important;justify-content:flex-start!important;text-align:left!important;margin:8px 0 4px!important;padding:0!important}
.wd-rsi .rsi-online-scheduling .location-slots{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:12px 0 6px!important;align-items:stretch;width:100%;max-width:100%}

/* Time slots — only .rsi-slot, never containers with “slot” in the name */
.wd-rsi .rsi-online-scheduling .rsi-slot{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;width:auto!important;min-width:118px!important;min-height:64px!important;padding:12px 16px!important;margin:0!important;background:#FDFBF7!important;color:#2C3A47!important;border:1px solid rgba(89,113,143,.2)!important;border-radius:2px!important;box-shadow:none!important;cursor:pointer;transition:border-color .25s ease,background .25s ease,transform .25s ease;text-align:center;letter-spacing:.02em!important;text-transform:none!important;font-weight:400!important}
.wd-rsi .rsi-online-scheduling .rsi-slot:hover{border-color:rgba(203,185,143,.95)!important;background:rgba(203,185,143,.12)!important;transform:translateY(-1px)}
.wd-rsi .rsi-online-scheduling .rsi-slot.rsi-text-bold,
.wd-rsi .rsi-online-scheduling .rsi-slot .rsi-text-bold{font-weight:500!important}
.wd-rsi .rsi-online-scheduling .rsi-slot > span:first-child,
.wd-rsi .rsi-online-scheduling .rsi-slot .rsi-xxs-text{font-size:10.5px!important;font-weight:500!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#8a8272!important;line-height:1.2!important;white-space:nowrap}
.wd-rsi .rsi-online-scheduling .rsi-slot > span:last-child{font-size:15px!important;font-weight:500!important;letter-spacing:.04em!important;color:#2C3A47!important;line-height:1.2!important;white-space:nowrap}
.wd-rsi .rsi-online-scheduling .rsi-slot[aria-pressed=true],
.wd-rsi .rsi-online-scheduling .rsi-slot.selected,
.wd-rsi .rsi-online-scheduling .rsi-slot.active{background:linear-gradient(170deg,#dccdaa,#cbb98f 46%,#ab9670)!important;border-color:#ab9670!important;color:#1a2530!important}
.wd-rsi .rsi-online-scheduling .rsi-slot[aria-pressed=true] > span,
.wd-rsi .rsi-online-scheduling .rsi-slot.selected > span{color:#1a2530!important}

/* Primary CTAs only — not mat-select / slot tiles */
.wd-rsi .rsi-online-scheduling button:not(.mat-mdc-select-trigger):not([class*=mat-]):not(.rsi-slot),
.wd-rsi .rsi-online-scheduling input[type=submit]{font-family:'Jost',sans-serif!important;font-size:12px!important;font-weight:500!important;letter-spacing:.2em!important;text-transform:uppercase!important;border-radius:2px!important;padding:14px 26px!important;background:#2C3A47!important;color:#fff!important;border:1px solid #2C3A47!important;box-shadow:none!important;cursor:pointer;transition:background .25s ease,border-color .25s ease,transform .25s ease}
.wd-rsi .rsi-online-scheduling button:not(.mat-mdc-select-trigger):not([class*=mat-]):not(.rsi-slot):hover{background:#59718F!important;border-color:#59718F!important;transform:translateY(-1px)}
.wd-rsi .rsi-online-scheduling button[disabled]{opacity:.45!important;transform:none!important}

/* Overlay panels (Angular CDK — often portaled to body; also style when nested) */
.cdk-overlay-container .mat-mdc-select-panel,
.cdk-overlay-pane .mat-mdc-select-panel{background:#FDFBF7!important;border:1px solid rgba(185,169,142,.45)!important;border-radius:2px!important;box-shadow:0 24px 50px -24px rgba(44,58,71,.45)!important}
.cdk-overlay-container .mat-mdc-option,
.cdk-overlay-pane .mat-mdc-option{font-family:'Jost',sans-serif!important;font-size:14px!important;font-weight:300!important;color:#2C3A47!important;min-height:44px!important;letter-spacing:.03em}
.cdk-overlay-container .mat-mdc-option:hover,
.cdk-overlay-container .mat-mdc-option.mat-mdc-option-active,
.cdk-overlay-pane .mat-mdc-option:hover{background:rgba(203,185,143,.16)!important}
.cdk-overlay-container .mat-mdc-option.mdc-list-item--selected,
.cdk-overlay-pane .mat-mdc-option.mdc-list-item--selected{background:rgba(203,185,143,.28)!important;color:#1a2530!important}

/* ---- RSI “Complete your booking” dialog (portaled outside .wd-rsi on desktop ≥700px) ---- */
.cdk-overlay-backdrop.cdk-overlay-dark-backdrop{background:rgba(34,48,62,.72)!important}
.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:min(560px,calc(100vw - 24px))!important;width:100%!important}
.mat-mdc-dialog-container{--mdc-dialog-container-shape:3px;padding:0!important}
.mat-mdc-dialog-container .mdc-dialog__surface,
.mat-mdc-dialog-surface{background:#FDFBF7!important;border-radius:3px!important;box-shadow:0 40px 90px -30px rgba(0,0,0,.55)!important;border:1px solid rgba(185,169,142,.4)!important;overflow:hidden!important;font-family:'Jost',sans-serif!important;color:#2C3A47!important}
.rsi-scheduling-popup{font-family:'Jost',sans-serif!important;color:#2C3A47!important;background:#FDFBF7!important}
.rsi-scheduling-popup,.rsi-scheduling-popup *{box-sizing:border-box}
.rsi-scheduling-popup .scheduling-popup-header{padding:22px 22px 8px!important;border-bottom:1px solid rgba(185,169,142,.28)}
.rsi-scheduling-popup .scheduling-popup-header .rsi-xxl-text,
.rsi-scheduling-popup .scheduling-popup-header span{font-family:'Cormorant Garamond',serif!important;font-size:28px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:#2C3A47!important}
.rsi-scheduling-popup .close-icon{color:#8a8272!important;font-size:22px!important;width:36px!important;height:36px!important;display:inline-flex!important;align-items:center;justify-content:center;border-radius:2px;transition:background .2s ease,color .2s ease}
.rsi-scheduling-popup .close-icon:hover{background:rgba(203,185,143,.18)!important;color:#2C3A47!important}
.rsi-scheduling-popup .scheduling-popup-body{padding:18px 22px 28px!important;min-height:min(70vh,640px)!important;max-height:min(78vh,720px)!important;-webkit-overflow-scrolling:touch}

/* Shared form / patient chrome — widget body AND booking popup */
.rsi-scheduling-popup .rsi-label,
.rsi-scheduling-popup label.rsi-label{display:block;font-family:'Jost',sans-serif!important;font-size:11px!important;font-weight:500!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:#8a8272!important;margin:0 0 8px!important}
.rsi-scheduling-popup .rsi-form-control{margin:0 0 14px!important}
.rsi-scheduling-popup .rsi-booking-header .rsi-xxl-text,
.rsi-scheduling-popup .rsi-booking-header .rsi-xl-text,
.rsi-scheduling-popup .rsi-patient-booking .rsi-xxl-text{font-family:'Cormorant Garamond',serif!important;font-weight:500!important;color:#2C3A47!important;letter-spacing:0!important;text-transform:none!important}
.rsi-scheduling-popup .rsi-light-text{font-weight:300!important;color:#5a6570!important;font-size:14px!important;line-height:1.5!important}
.rsi-scheduling-popup .mat-mdc-form-field,
.rsi-scheduling-popup .mat-mdc-text-field-wrapper,
.rsi-scheduling-popup .mdc-text-field,
.rsi-scheduling-popup .mdc-notched-outline,
.rsi-scheduling-popup .mdc-notched-outline__leading,
.rsi-scheduling-popup .mdc-notched-outline__notch,
.rsi-scheduling-popup .mdc-notched-outline__trailing{border:0!important;box-shadow:none!important;background:transparent!important;outline:none!important}
.rsi-scheduling-popup .mdc-notched-outline__leading,
.rsi-scheduling-popup .mdc-notched-outline__notch,
.rsi-scheduling-popup .mdc-notched-outline__trailing{border-color:transparent!important;padding:0!important}
.rsi-scheduling-popup .mat-mdc-text-field-wrapper.mdc-text-field--outlined,
.rsi-scheduling-popup .mdc-text-field--outlined{border:1px solid rgba(44,58,71,.22)!important;border-radius:2px!important;background:#fff!important;padding:0 14px!important;min-height:48px!important}
.rsi-scheduling-popup .mat-mdc-form-field:hover .mdc-text-field--outlined{border-color:rgba(203,185,143,.95)!important}
.rsi-scheduling-popup .mat-mdc-form-field.mat-focused .mdc-text-field--outlined{border-color:#cbb98f!important;box-shadow:0 0 0 3px rgba(203,185,143,.16)!important}
.rsi-scheduling-popup .mat-mdc-form-field-subscript-wrapper{height:auto!important}
.rsi-scheduling-popup input:not([type=checkbox]):not([type=radio]),
.rsi-scheduling-popup select,
.rsi-scheduling-popup textarea,
.rsi-scheduling-popup .mat-mdc-input-element{font-family:'Jost',sans-serif!important;font-size:15px!important;font-weight:400!important;color:#2C3A47!important;letter-spacing:.02em!important}
.rsi-scheduling-popup .mat-mdc-select-value,
.rsi-scheduling-popup .mat-mdc-select-placeholder{font-family:'Jost',sans-serif!important;font-size:14px!important;color:#2C3A47!important}
.rsi-scheduling-popup button:not(.mat-mdc-select-trigger):not([class*=mat-icon]),
.rsi-scheduling-popup .rsi-patient-form-buttons button{font-family:'Jost',sans-serif!important;font-size:12px!important;font-weight:500!important;letter-spacing:.18em!important;text-transform:uppercase!important;border-radius:2px!important;padding:14px 22px!important;background:#2C3A47!important;color:#fff!important;border:1px solid #2C3A47!important;box-shadow:none!important;min-height:48px;cursor:pointer}
.rsi-scheduling-popup .rsi-patient-form-buttons button:hover{background:#59718F!important;border-color:#59718F!important}
.rsi-scheduling-popup .rsi-patient-form-buttons{flex-wrap:wrap;gap:10px!important}
.rsi-scheduling-popup .rsi-patient-form-buttons button.mat-mdc-button-base.mat-unthemed,
.rsi-scheduling-popup button[class*=secondary],
.rsi-scheduling-popup button[class*=outline],
.rsi-scheduling-popup button[class*=back]{background:transparent!important;color:#2C3A47!important;border:1px solid #b9a98e!important}

/* Appointment summary card inside booking flow / popup */
.wd-rsi .rsi-online-scheduling .rsi-book-info-container,
.rsi-scheduling-popup .rsi-book-info-container,
.wd-rsi .rsi-online-scheduling .appt-info,
.rsi-scheduling-popup .appt-info{display:flex!important;gap:14px!important;align-items:flex-start!important;background:#fff!important;border:1px solid rgba(185,169,142,.4)!important;border-radius:3px!important;padding:16px!important;margin:0 0 18px!important;box-shadow:0 14px 32px -24px rgba(44,58,71,.4)!important}
.wd-rsi .rsi-online-scheduling .appt-info-item,
.rsi-scheduling-popup .appt-info-item{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:0 0 8px!important;font-size:13.5px!important;font-weight:300!important;color:#5a6570!important;line-height:1.4!important}
.wd-rsi .rsi-online-scheduling .appt-info-item:last-child,
.rsi-scheduling-popup .appt-info-item:last-child{margin-bottom:0!important}
.wd-rsi .rsi-online-scheduling .appt-info-item-icon,
.rsi-scheduling-popup .appt-info-item-icon,
.wd-rsi .rsi-online-scheduling .appt-info-item mat-icon,
.rsi-scheduling-popup .appt-info-item mat-icon{color:#b9a98e!important;font-size:18px!important;width:18px!important;height:18px!important;flex:0 0 auto}
.wd-rsi .rsi-online-scheduling .appt-info-item-text,
.rsi-scheduling-popup .appt-info-item-text{color:#2C3A47!important;font-weight:400!important}
.wd-rsi .rsi-online-scheduling .rsi-book-info-container .rsi-provider-name,
.rsi-scheduling-popup .rsi-book-info-container .rsi-provider-name{font-family:'Cormorant Garamond',serif!important;font-size:22px!important;font-weight:500!important;margin:0 0 10px!important}

/* DOB — one control, not three boxed fields fighting Material outlines */
.wd-rsi .rsi-online-scheduling .dob-row,
.rsi-scheduling-popup .dob-row{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:nowrap;width:100%;background:#fff!important;border:1px solid rgba(44,58,71,.22)!important;border-radius:2px!important;padding:4px 10px!important;min-height:48px}
.wd-rsi .rsi-online-scheduling .dob-segment,
.rsi-scheduling-popup .dob-segment{flex:1 1 0!important;min-width:0!important;margin:0!important}
.wd-rsi .rsi-online-scheduling .dob-segment .mat-mdc-text-field-wrapper,
.wd-rsi .rsi-online-scheduling .dob-segment .mdc-text-field,
.wd-rsi .rsi-online-scheduling .dob-segment .mdc-text-field--outlined,
.rsi-scheduling-popup .dob-segment .mat-mdc-text-field-wrapper,
.rsi-scheduling-popup .dob-segment .mdc-text-field,
.rsi-scheduling-popup .dob-segment .mdc-text-field--outlined{border:0!important;box-shadow:none!important;background:transparent!important;padding:0 4px!important;min-height:40px!important}
.wd-rsi .rsi-online-scheduling .dob-separator,
.rsi-scheduling-popup .dob-separator{flex:0 0 auto;color:#8a8272!important;font-weight:300!important;padding:0 2px}

/* Patient step, all widths: single column — provider chip (round photo, name
   and appointment details beside it) on top, form underneath. The avatar block
   is RSI's app-book-info card; explicit sizes so it can never balloon. */
.wd-rsi .rsi-online-scheduling .rsi-patient-booking,
.rsi-scheduling-popup .rsi-patient-booking,
.wd-rsi .rsi-online-scheduling .rsi-scheduling-container .rsi-scheduling-content .rsi-patient-booking,
.rsi-scheduling-popup .rsi-scheduling-container .rsi-scheduling-content .rsi-patient-booking{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  margin-top:12px!important;
  flex-direction:unset!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking-content,
.rsi-scheduling-popup .rsi-patient-booking-content{
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  flex:none!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar{
  display:block!important;
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:2px 0 0!important;
  padding:12px 14px!important;
  justify-self:stretch;
  overflow:visible!important;
  border:1px solid rgba(185,169,142,.5)!important;
  border-radius:3px!important;
  background:#ffffff!important;
  box-shadow:0 12px 26px -20px rgba(44,58,71,.4)!important;
  position:static!important;
  float:none!important;
  flex:none!important;
  align-self:start!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar .rsi-book-info-container,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar .rsi-book-info-container{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:14px!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar app-user-avatar,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar app-user-avatar,
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar app-user-avatar > div,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar app-user-avatar > div,
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar .rsi-text-avatar,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar .rsi-text-avatar{
  display:block!important;
  width:64px!important;
  height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  flex:0 0 64px!important;
  margin:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  background-color:#F3F0EB!important;
  background-size:175%!important;
  background-position:center 18%!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar app-user-avatar,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar app-user-avatar{
  border:1px solid rgba(185,169,142,.6)!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar .appt-info,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar .appt-info{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:2px!important;
  flex:1 1 auto!important;
  min-width:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar .appt-info .rsi-xl-text,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar .appt-info .rsi-xl-text{
  font-family:'Cormorant Garamond',serif!important;
  font-size:20px!important;
  font-weight:500!important;
  color:#2C3A47!important;
  line-height:1.15!important;
  margin:0 0 3px!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-booking > .rsi-provider-avatar .appt-info-item,
.rsi-scheduling-popup .rsi-patient-booking > .rsi-provider-avatar .appt-info-item{
  margin:0!important;
  font-size:12.5px!important;
  line-height:1.35!important
}
.wd-rsi .rsi-online-scheduling .rsi-patient-form-buttons,
.rsi-scheduling-popup .rsi-patient-form-buttons{margin-top:18px!important}

/* SMS opt-in — keep checkbox + copy in normal flow so HOME PHONE can't collide */
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle,
.rsi-scheduling-popup .rsi-opt-in-toggle{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
  margin:10px 0 20px!important;
  padding:14px 14px!important;
  background:rgba(203,185,143,.1)!important;
  border:1px solid rgba(185,169,142,.4)!important;
  border-radius:2px!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:#3d4a57!important;
  letter-spacing:0!important;
  text-transform:none!important;
  min-height:0!important;
  overflow:visible!important
}
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle .mat-mdc-checkbox,
.rsi-scheduling-popup .rsi-opt-in-toggle .mat-mdc-checkbox,
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle .mdc-form-field,
.rsi-scheduling-popup .rsi-opt-in-toggle .mdc-form-field{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  height:auto!important;
  min-height:0!important
}
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle .mdc-checkbox,
.rsi-scheduling-popup .rsi-opt-in-toggle .mdc-checkbox{
  flex:0 0 auto!important;
  margin-top:2px!important;
  padding:0!important
}
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle label,
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle .mdc-label,
.rsi-scheduling-popup .rsi-opt-in-toggle label,
.rsi-scheduling-popup .rsi-opt-in-toggle .mdc-label{
  position:static!important;
  display:block!important;
  flex:1 1 auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  font-family:'Jost',sans-serif!important;
  font-size:14px!important;
  font-weight:300!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  color:#3d4a57!important;
  line-height:1.45!important;
  white-space:normal!important;
  height:auto!important
}
.wd-rsi .rsi-online-scheduling .rsi-opt-in-toggle + .rsi-form-control,
.rsi-scheduling-popup .rsi-opt-in-toggle + .rsi-form-control{margin-top:4px!important}

.wd-rsi .rsi-online-scheduling hr{border:0!important;height:1px!important;background:linear-gradient(90deg,transparent,rgba(185,169,142,.5),transparent)!important}
.wd-rsi app-invalid-session{display:none!important}
.wd-rsi:has(app-invalid-session) rsi-online-scheduling,
.wd-rsi:has(app-invalid-session) .rsi-online-scheduling,
.wd-rsi:has(app-invalid-session) .wd-rsi-host{min-height:0!important;height:0!important;overflow:hidden}
.wd-rsi .wd-rsi-fallback{display:none}
.wd-rsi:has(app-invalid-session) .wd-rsi-fallback{display:block}

/* Mobile — footer schedulers, inline booking steps (<700px RSI skips popup), dialogs if shown */
@media (max-width:720px){
  .wd-rsi{padding:16px 12px!important;margin-left:0!important;margin-right:0!important}
  .wd-rsi .rsi-online-scheduling .rsi-xxl-text,
  .wd-rsi .rsi-online-scheduling h1,
  .wd-rsi .rsi-online-scheduling h2{font-size:clamp(24px,7vw,30px)!important;margin-bottom:8px!important}
  .wd-rsi .rsi-online-scheduling .rsi-os-welcome-message{font-size:14px!important;margin-bottom:14px!important}
  .wd-rsi .rsi-online-scheduling .rsi-label,
  .wd-rsi .rsi-online-scheduling label.rsi-label,
  .rsi-scheduling-popup .rsi-label{font-size:11.5px!important;letter-spacing:.14em!important;color:#6e675c!important;margin-bottom:6px!important}
  .wd-rsi .rsi-online-scheduling .rsi-form-control,
  .rsi-scheduling-popup .rsi-form-control{margin:0 0 12px!important}
  .wd-rsi .rsi-online-scheduling .provider-container{grid-template-columns:72px minmax(0,1fr);column-gap:12px;padding:14px!important}
  .wd-rsi .rsi-online-scheduling .rsi-provider-avatar,
  .wd-rsi .rsi-online-scheduling .rsi-provider-avatar app-user-avatar,
  .wd-rsi .rsi-online-scheduling .rsi-provider-avatar app-user-avatar > div{width:72px!important;height:90px!important;max-width:72px!important;max-height:90px!important}
  .wd-rsi .rsi-online-scheduling .rsi-provider-name{font-size:20px!important}
  .wd-rsi .rsi-online-scheduling .location-slots{gap:8px!important;margin-top:10px!important}
  .wd-rsi .rsi-online-scheduling .rsi-slot{min-width:calc(50% - 6px)!important;flex:1 1 calc(50% - 6px);min-height:56px!important;padding:10px 12px!important}

  /* Patient step on phones: stacking + compact portrait handled by the ≤1000px block */
  .wd-rsi .rsi-online-scheduling .rsi-patient-booking,
  .rsi-scheduling-popup .rsi-patient-booking,
  .wd-rsi .rsi-online-scheduling .rsi-scheduling-container .rsi-scheduling-content .rsi-patient-booking,
  .rsi-scheduling-popup .rsi-scheduling-container .rsi-scheduling-content .rsi-patient-booking{margin-top:8px!important}
  /* Hollow summary with photo only (no date/time lines) — don't keep the empty banner */
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container:not(:has(.appt-info-item)),
  .rsi-scheduling-popup .rsi-book-info-container:not(:has(.appt-info-item)),
  .wd-rsi .rsi-online-scheduling .appt-info:not(:has(.appt-info-item)),
  .rsi-scheduling-popup .appt-info:not(:has(.appt-info-item)){display:none!important}

  /* Compact appointment chip (photo + details), not a hollow banner */
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container,
  .rsi-scheduling-popup .rsi-book-info-container,
  .wd-rsi .rsi-online-scheduling .appt-info,
  .rsi-scheduling-popup .appt-info{flex-direction:row!important;align-items:center!important;gap:12px!important;padding:12px!important;margin:0 0 14px!important}
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container .rsi-provider-avatar,
  .rsi-scheduling-popup .rsi-book-info-container .rsi-provider-avatar,
  .wd-rsi .rsi-online-scheduling .appt-info .rsi-provider-avatar,
  .rsi-scheduling-popup .appt-info .rsi-provider-avatar,
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container app-user-avatar,
  .rsi-scheduling-popup .rsi-book-info-container app-user-avatar,
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container app-user-avatar > div,
  .rsi-scheduling-popup .rsi-book-info-container app-user-avatar > div{width:56px!important;height:56px!important;max-width:56px!important;max-height:56px!important;border-radius:2px!important;flex:0 0 56px!important}
  .wd-rsi .rsi-online-scheduling .rsi-book-info-container .rsi-provider-name,
  .rsi-scheduling-popup .rsi-book-info-container .rsi-provider-name{font-size:18px!important;margin:0 0 4px!important}
  .wd-rsi .rsi-online-scheduling .appt-info-item,
  .rsi-scheduling-popup .appt-info-item{margin:0 0 4px!important;font-size:12.5px!important}
  .wd-rsi .rsi-online-scheduling .rsi-booking-header,
  .rsi-scheduling-popup .rsi-booking-header{margin-bottom:12px!important;gap:2px!important}
  .wd-rsi .rsi-online-scheduling .rsi-patient-form,
  .rsi-scheduling-popup .rsi-patient-form{gap:4px!important}
  .wd-rsi .rsi-online-scheduling .rsi-patient-form-buttons,
  .rsi-scheduling-popup .rsi-patient-form-buttons{flex-direction:column!important;margin-top:12px!important}
  .wd-rsi .rsi-online-scheduling .rsi-patient-form-buttons button,
  .rsi-scheduling-popup .rsi-patient-form-buttons button{width:100%!important;flex:none!important}
  .wd-rsi .rsi-online-scheduling .dob-row,
  .rsi-scheduling-popup .dob-row{min-height:46px;padding:2px 8px!important}
  .wd-rsi .rsi-online-scheduling .mat-mdc-text-field-wrapper.mdc-text-field--outlined,
  .wd-rsi .rsi-online-scheduling .mdc-text-field--outlined,
  .rsi-scheduling-popup .mdc-text-field--outlined{min-height:46px!important}
  .wd-rsi .rsi-online-scheduling .inline-select-wrapper,
  .wd-rsi .rsi-online-scheduling .inline-select-control{width:100%;justify-content:flex-start}

  /* Booking dialog — near full-bleed on small screens */
  .cdk-overlay-pane.mat-mdc-dialog-panel{max-width:calc(100vw - 16px)!important;margin:8px!important}
  .rsi-scheduling-popup .scheduling-popup-header{padding:16px 16px 8px!important}
  .rsi-scheduling-popup .scheduling-popup-header .rsi-xxl-text,
  .rsi-scheduling-popup .scheduling-popup-header span{font-size:24px!important}
  .rsi-scheduling-popup .scheduling-popup-body{padding:14px 16px 22px!important;min-height:0!important;max-height:calc(100dvh - 96px)!important;max-height:calc(100vh - 96px)!important}

  /* Site booking chrome (footer / sticky path chooser modals) */
  .wd-booking-modal,
  .wd-care-chooser,
  .wd-guide-modal{padding:14px 10px calc(20px + env(safe-area-inset-bottom,0px))!important;align-items:flex-start!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .wd-booking-modal .wd-rsi,
  .wd-care-chooser .wd-rsi{max-width:100%!important}
  [style*="top: -26px"][style*="translateX(-50%)"]{width:calc(100% - 24px)!important;max-width:320px}
  [style*="top: -26px"][style*="translateX(-50%)"] a,
  [style*="top: -26px"][style*="translateX(-50%)"] span[style*="padding:15px 0"]{width:50%!important;font-size:11px!important;padding-top:13px!important;padding-bottom:13px!important}
}

