/* custom overrides (loaded last) */
/* eyebrow contact bar: icons sit tight against their text with even spacing,
   and no item wraps onto a second line */
.secondaryNavContent { flex-wrap: nowrap; gap: 2.5em; }
.secondaryNavContent .blockContainer,
.secondaryNavContent .blockInnerContent p { white-space: nowrap; }
.secondaryNavContent .blockInnerContent { text-align: left; }
.secondaryNavContent .blockInnerContent br { display: none; }
.secondaryNavContent .blockInnerContent:before {
  content: none !important;
}
.blockWrap_d1c3085901d84645b31bd09c4bae76b6 .blockInnerContent p:before,
.blockWrap_ec68df6a64454b0d992c5244bb2cac55 .blockInnerContent p.contactPhone:before,
.blockWrap_f00a8333e723460baad25b5365b52e36 .blockInnerContent p:before {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  height: 16px;
  margin-right: 8px;
  vertical-align: -2px;
}
.blockWrap_d1c3085901d84645b31bd09c4bae76b6 .blockInnerContent p:before {
  background-image: url(location_1.png);
  width: 13px;
}
.blockWrap_ec68df6a64454b0d992c5244bb2cac55 .blockInnerContent p.contactPhone:before {
  background-image: url(phone_1.png);
  width: 16px;
}
.blockWrap_f00a8333e723460baad25b5365b52e36 .blockInnerContent p:before {
  background-image: url(hours-dk.png);
  width: 16px;
}
/* newsletter: center the signup embed within its section */
.blockContent .blockImg.blockForm {
  float: none !important;
  width: 100% !important;
  text-align: center;
}
.blockContent .blockImg.blockForm [data-lumistry-capture] {
  max-width: 640px;
  margin: 0 auto;
}
/* footer contact: keep the email tight against its icon (the long address
   otherwise wraps to a line below the floated icon) */
.block_de79045f232b4d0782468ff7f60bcb79 .blockText p.contactEmail {
  display: flex;
  align-items: flex-start;
}
.block_de79045f232b4d0782468ff7f60bcb79 .blockText p.contactEmail:before {
  float: none !important;
  flex: 0 0 16px;
  margin: 4px 8px 0 0 !important;
}
.block_de79045f232b4d0782468ff7f60bcb79 .blockText p.contactEmail a {
  min-width: 0;
  overflow-wrap: anywhere;
}
/* accessible hidden text (used to give the image-only logo H1 real text) */
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
/* click-to-call links keep the surrounding text's look */
a.telLink { color: inherit; text-decoration: none; }
a.telLink:hover { text-decoration: underline; }
@media (max-width: 767px) {
  .headerAndNavContainer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
  }
  /* eyebrow (secondary nav) collapses on scroll to reclaim space */
  .secondaryNav {
    overflow: hidden;
    max-height: 300px;
    transition: max-height 0.25s ease, opacity 0.2s ease;
  }
  .secondaryNav.eyebrow-collapsed {
    max-height: 0 !important;
    opacity: 0 !important;
  }
}
/* mobile page: RxLocal app section */
.mobileInfo .mobileAppInfo {
  display: flex;
  align-items: center;
  gap: 3em;
  flex-wrap: wrap;
  max-width: 1000px;
  margin: 0 auto;
}
.mobileInfo .mobileAppMedia { flex: 0 0 280px; margin: 0 auto; }
.mobileInfo .mobileAppMedia img {
  width: 280px; height: 280px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.mobileInfo .mobileAppText { flex: 1 1 400px; }
.mobileInfo .mobileAppText p { margin: 0 0 1.5em; }
.mobileInfo .mobileAppText p:last-of-type { margin-bottom: 0; }
.mobileInfo ul.mobileAppBadges {
  list-style: none;
  padding: 0;
  margin: 1.5em 0 0;
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
  align-items: center;
}
.mobileInfo ul.mobileAppBadges li { margin: 0; }
.mobileInfo ul.mobileAppBadges img { width: 180px; height: auto; display: block; }

/* about page: pharmacy team section */
.teamSection { max-width: 1000px; margin: 0 auto; padding: 1em 1.5em 4em; }
.teamSection .contentTitle { text-align: left; margin-bottom: 1.5em; }
.teamSection .teamMember {
  display: flex;
  gap: 3em;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.teamSection .teamPhoto img {
  width: 240px;
  height: auto;
  display: block;
  border-radius: 10px;
}
.teamSection .teamInfo { flex: 0 1 420px; text-align: left; }
.teamSection .teamInfo .teamName { margin: 0 0 0.75em; }
.teamSection .teamInfo ul { list-style: disc; padding: 0 0 0 1.25em; margin: 0; }
.teamSection .teamInfo ul li { margin: 0 0 0.6em; }
@media (max-width: 640px) {
  .teamSection .teamMember { gap: 1.5em; }
}
