.ms-header__mobile-logo {
  display: none;
}

.list-unstyled
  .ms-product-search-result__item
  .msc-product__details
  .msc-price {
  display: none !important;
}

.msc-cart-line__product-unit-of-measure-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}

.ms-cart .msc-cart__empty-cart {
  margin-bottom: 100px;
}

.msc-add-to-cart__dialog__body .msc-add-to-cart__dialog__product-price {
  display: none !important;
}

.msc-add-to-cart__dialog__product-unitOfMeasure span::before {
  content: "Unit of measure :  ";
  position: relative;
  align-items: center;
  color: #393939;
  display: flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  justify-content: center;
  line-height: normal;
  text-transform: capitalize;
}

.msc-add-to-cart__dialog__product-unitOfMeasure span {
  display: flex;
  margin: 10px 0;
  align-items: center;
}

.msc-add-to-cart__dialog__product-unitOfMeasure {
  align-items: center;
  color: #003087;
  display: flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  justify-content: center;
  line-height: normal;
}

.space-chk .ms-text-block {
  margin: 0px 0 28px !important;
}

.ms-checkout__guided-card-btn-edit[aria-label="Change Contact Information"] {
  display: none !important;
}

.msc-autoSuggest__categoryResults-title {
  display: block !important;
  padding: 0px 0 12px !important;
  font-family: "Helvetica Neue LT Std" !important;
}

.msc-price.msc-autoSuggest__productResults-item-price,
[data-delivery-mode="Pickup"] .ms-checkout-shipping-address {
  display: none !important;
}

.ms-cart
  .msc-cart-lines-group
  .msc-cart-lines-item
  .msc-add-to-wishlist.msc-cart-line__add-to-wishlist {
  display: none !important;
}

.ms-order-details__order-summary-line-tax {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px !important;
}

.msc-cart-line__product .msc-cart-line__product-price {
  display: none !important;
}

.msc-cart-line .msc-cart-line__product-savings {
  display: none !important;
}

.ms-order-details__line-status-stack .ms-order-details__line-total-row {
  display: none !important;
}

.msc-btn.msc-btn-secondary:disabled {
  background-color: #999;
  border-color: #999;
  color: #fff;
  cursor: not-allowed;
  opacity: 1;
}

.phibro-request-new-items-modal .phibro-request-new-items-modal__dialog {
  height: auto !important;
}

.phibro-request-new-items-modal__card .form-check-input {
  width: 20px !important;
  height: 20px !important;
}

.ms-search__autoSuggest
  .ms-search__autoSuggest__keyword
  .msc-autoSuggest_keywordsResults-title {
  padding: 0px 0 12px !important;
  font-family: "Helvetica Neue LT Std" !important;
  font-weight: 500;
}

.ms-search__autoSuggest
  .ms-search__autoSuggest__category
  .msc-autoSuggest__categoryResults-items
  .msc-autoSuggest__categoryResults-no-results {
  font-family: "Helvetica Neue LT Std" !important;
  padding-top: 12px !important;
}

.ms-search__autoSuggest__product
  .msc-autoSuggest__productResults-items
  > .msc-autoSuggest__productResults-item {
  border: 1px solid #e5e0e0;
}

.ms-search__autoSuggest
  .ms-search__autoSuggest__category
  .msc-autoSuggest__categoryResults-items
  li {
  padding-bottom: 3px;
}

.ms-search__autoSuggest
  .ms-search__autoSuggest__category
  .msc-autoSuggest__categoryResults-items
  li
  a {
  padding: 8px;
  border-radius: 8px;
}

.ms-search__autoSuggest
  .ms-search__autoSuggest__category
  .msc-autoSuggest__categoryResults-items
  li
  a:hover {
  background-color: #003087;
  color: #fff !important;
  text-decoration: none;
}
.msc-autoSuggest__categoryResults-item a span:hover {
  background-color: transparent !important;
  color: #fff;
}

.ms-search-result-container__Sort-by-category .msc-l-dropdown,
.ms-search-result-container__Sort-by-category .msc-l-dropdown__label {
  font-size: 16px !important;
}

.ms-search-result-container__Sort-by-category .msc-l-dropdown,
.ms-search-result-container__Sort-by-category .msc-l-dropdown__label {
  font-size: 16px !important;
}

.msc-refiner-modal__wrapper button.msc-refiner-options__toggle_collapsed,
.msc-refiner-modal__wrapper button.msc-refiner-options__toggle_expanded,
.msc-refiner__wrapper button.msc-refiner-options__toggle_collapsed,
.msc-refiner__wrapper button.msc-refiner-options__toggle_expanded {
  font-family: "Helvetica Neue LT Std" !important;
  font-size: 14px !important;
}

@media (min-width: 1440px) {
  .msc-refiner-modal__wrapper .msc-refiner-options.list-group,
  .msc-refiner__wrapper .msc-refiner-options.list-group {
    min-width: 20%;
    width: 30% !important;
  }
}

.ms-business-organization-list__table th[data-sort-name="SpendingLimit"],
.ms-business-organization-list__table tbody td:nth-child(5) {
  display: none;
}

.po-number {
  .po-number-input-error {
    border-color: #dc3545;

    &:focus {
      border-color: #dc3545;
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.15);
    }
  }

  .po-number-error {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 10px;
    color: #dc3545;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
  }

  .po-number-error-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #dc3545;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 16px;
    flex-shrink: 0;
  }
}

.ms-order-details__group-delivery.multiple-pickUp {
  .ms-order-details__group-delivery-heading,
  .ms-order-details__group-delivery-total-items {
    display: none !important;
  }
}
.phibro-header__mega-container
  .phb-nav__root-list--desktop
  .phb-right-card
  .phb-nav__item--level-2 {
  min-height: 49px;
  height: auto !important;
}
.phibro-header__mega-container
  .phb-nav__root-list--desktop
  .phb-left-card
  .phb-nav__item.phb-nav__item--level-1 {
  min-height: 49px;
  height: auto !important;
}
.phibro-header__mega-container
  .phb-nav__root-list--desktop
  .phb-right-card
  .phb-nav__item--level-2
  .phb-nav__link,
.phibro-header__mega-container
  .phb-nav__root-list--desktop
  .phb-left-card
  .phb-nav__item.phb-nav__item--level-1
  .phb-nav__link.phb-nav__link--parent {
  height: auto;
  display: flex;
  align-items: center;
}
.phibro-header__mega-container
  .phb-nav__root-list--desktop
  .phb-left-card
  .phb-arrow
  .phb-nav__link--parent:after {
  position: absolute;
  right: 5px;
}
.phibro-header__mega-container .phb-nav__root-list--desktop .phb-right-card {
  max-height: 300px;
  overflow-y: auto;
}

@media (max-width: 1024px) {
  .ms-cookie-compliance__buttons {
    flex-direction: column;
  }
}

.ms-buybox .msc-add-to-order-template-icon {
  display: none !important;
}
.phibro-header__bar
  .phibro-header__account
  .ms-header__account-info
  .ms-header__profile-button
  .ms-profile-button-text
  div,
.phibro-header__bar .phibro-header__cart .ms-cart-icon .msc-cart-icon__count,
.phibro-header__bar
  .phibro-header__cart
  .ms-cart-icon
  .ms-cart-icon-wrapper
  .msc-cart-icon:before,
.phibro-header__bar .phibro-header__cart {
  cursor: pointer;
}
.ms-checkout__btn-place-order:disabled,
.ms-checkout__btn-place-order[disabled] {
  opacity: 0.7;
  pointer-events: none;
  color: grey !important;
  background-color: darkgrey !important;
  border-color: darkgray !important;
}
.ms-business-organization-list__modal.type-remove
  .ms-business-organization-list__form-list
  > li:last-child {
  display: none !important;
}


.ms-order-details {
    .msc-cart-line__product-image {
        display: inline-block;
        width: 150px;
        height: 166px;

        .msc-empty_image {
            display: block;
            width: 100%;
            height: 100%;
            background-color: #f3f2f1;
            border-radius: 8px;
            background-repeat: no-repeat;
            background-position: center;
        }
    }
}

.phibro-banner .ms-content-block__image img {
  object-fit: fill !important;
}

.contact-us {
  margin: 0 auto;
  padding: 40px 24px;
  line-height: 1.6;
}

/* Headings spacing */
.contact-us h1 {
  margin: 0 0 8px;
}

.contact-us h2 {
  margin: 32px 0 10px;
}

.contact-us h3 {
  margin: 20px 0 12px;
}

/* Paragraph spacing */
.contact-us p {
  margin: 0 0 10px;
}

/* One line per contact item */
.contact-us h3 ~ p {
  margin: 0 0 12px;
}

/* Support hours list */
.contact-us ul {
  margin: 4px 0 0;
  padding-left: 24px;
}

.contact-us li {
  margin-bottom: 6px;
}

/* Mobile */
@media (max-width: 600px) {
  .contact-us {
    padding: 24px 16px;
  }
}

.ms-media-gallery__item {
  .msc-empty_image {
    height: 500px !important;
  }
}

.msc-refiner-options__list-item:has(a[aria-label="Phibro-pickup"]) {
  display: none;
}


.msc-empty_image {
    background-image: url('https://images-us-prod.cms.commerce.dynamics.com/cms/api/qrlwsksdcd/imageFileData/search?fileName=Phibro-Placeholder.png') !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}


/* =====================================================================
   PHIBRO LOGIN PAGES OVERRIDES: mobile, tablet and 1024px
   Pages covered:
     1) Sign in               (.phibro-login-wrapper  > .ms-sign-in)
     2) Account Verification  (.ms-password-reset-verification)
     3) Change password       (.ms-password-reset)
   Replace your whole override file with this.
   - Phone image  : Phibro-login-bg-phone-HQ.webp  (1170 x 2532)  -> MA3BJ3
   - Tablet image : Phibro-login-bg-tablet-HQ.webp (1536 x 2048)  -> MA3BJ6
   - Desktop (1024px and above) keeps its own image and layout.
   On the two password pages the module root itself plays the role of
   .phibro-login-wrapper (it holds the logo slice, the animals slice and the card).
   ===================================================================== */

/* ========== MOBILE + TABLET (up to 1023px) ========== */
@media (max-width: 1023px) {
  /* hide desktop image + stop the full-screen overlay from overflowing (sign in page) */
  .phb-sign-in .ms-container-background-image.ms-container-background-image {
    background-image: none !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
  }
  /* same for the two password pages (kept as a separate rule: :has() needs a modern browser) */
  body:has(.ms-password-reset) .ms-container-background-image.ms-container-background-image,
  body:has(.ms-password-reset-verification) .ms-container-background-image.ms-container-background-image {
    background-image: none !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
  }
  .sign-in-content-container { height: auto !important; min-height: 0 !important; }

  /* ----- page root: holds logo slice, animals slice and the card ----- */
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification {
    /* PHONE image: Phibro-login-bg-phone-HQ.webp (1170 x 2532) */
    --phibro-bg: url('https://images-us-prod.cms.commerce.dynamics.com/cms/api/vrcnkpdqvc/imageFileData/MA3BJ3?pubver=1');
    --phibro-art-w: 480px; /* max width of the artwork; it scales the logo + animals together */
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    background: #fff;
  }
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  /* TOP: logo area (top 17% of the image), in the page flow */
  .phibro-login-wrapper.phibro-login-wrapper::before,
  .ms-password-reset.ms-password-reset::before,
  .ms-password-reset-verification.ms-password-reset-verification::before {
    content: '';
    flex: none;
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: var(--phibro-art-w);
    aspect-ratio: 2.7186; /* 1170 / (0.17 * 2532) */
    margin: 16px 0 12px;
    background: var(--phibro-bg) no-repeat;
    background-size: 100% auto;
    background-position: 0 0;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to bottom, #000 75%, transparent), linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(to bottom, #000 75%, transparent), linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
    mask-composite: intersect;
  }

  /* BOTTOM: dots + animals (bottom 80% of the image), pinned to the bottom edge, adds no height so no scroll */
  .phibro-login-wrapper.phibro-login-wrapper::after,
  .ms-password-reset.ms-password-reset::after,
  .ms-password-reset-verification.ms-password-reset-verification::after {
    content: '';
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: var(--phibro-art-w);
    margin: 0 auto;
    aspect-ratio: 0.5776; /* phone: 1170 / (0.8 * 2532) */
    background: var(--phibro-bg) no-repeat;
    background-size: 100% auto;
    background-position: 0 100%;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 10%), linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(to bottom, transparent, #000 10%), linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
    mask-composite: intersect;
  }

  /* ================= SIGN IN PAGE: card ================= */
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 0;
    margin: 0 0 auto;
    padding: 0 0 12px;
    justify-content: center;
  }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container {
    box-sizing: border-box;
    width: calc(100% - 24px);
    max-width: 420px;
    margin: 0 auto;
    padding: 20px 16px;
  }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-section { align-items: stretch; text-align: left; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { width: 100%; font-size: 22px; text-align: left; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { width: 100%; margin: 4px 0 14px; text-align: left; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 13px; line-height: 18px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item:first-child { margin-top: 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 42px; font-size: 14px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 10px 0 14px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 42px; }

  /* ============ ACCOUNT VERIFICATION + CHANGE PASSWORD PAGES: card ============ */
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container {
    box-sizing: border-box;
    position: relative;
    z-index: 2;
    width: calc(100% - 24px);
    max-width: 420px;
    margin: 0 auto auto;
    padding: 20px 16px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 32px rgba(20, 55, 95, 0.14);
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__heading,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__heading {
    margin: 0;
    font-size: 22px;
    line-height: normal;
    text-align: left;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item {
    margin-top: 12px;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-label,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-label {
    font-size: 13px;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-input,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-input {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    height: 42px;
    padding: 0 16px;
    font-size: 14px;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__continue-button,
  .ms-password-reset.ms-password-reset .ms-password-reset__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__continue-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__email-verification-button {
    width: 100%;
    height: 42px;
    min-height: 0;
    margin-top: 10px;
    font-size: 14px;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-success-text {
    font-size: 13px;
    line-height: 18px;
  }
}

/* ========== TABLET (768px - 1023px): tablet image, larger card and text ========== */
@media (min-width: 768px) and (max-width: 1023px) {
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification {
    /* TABLET image: Phibro-login-bg-tablet-HQ.webp (1536 x 2048) */
    --phibro-bg: url('https://images-us-prod.cms.commerce.dynamics.com/cms/api/vrcnkpdqvc/imageFileData/MA3BJ6?pubver=1');
    --phibro-art-w: 768px;
  }
  .phibro-login-wrapper.phibro-login-wrapper::before,
  .ms-password-reset.ms-password-reset::before,
  .ms-password-reset-verification.ms-password-reset-verification::before { aspect-ratio: 3.947; /* 1536 / (0.19 * 2048) */ }
  .phibro-login-wrapper.phibro-login-wrapper::after,
  .ms-password-reset.ms-password-reset::after,
  .ms-password-reset-verification.ms-password-reset-verification::after { aspect-ratio: 0.9375; /* 1536 / (0.8 * 2048) */ }

  /* sign in */
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container { max-width: 520px; padding: 28px 32px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 26px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 15px; line-height: 22px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 15px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 52px; font-size: 15px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 52px; }

  /* account verification + change password */
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container { max-width: 520px; padding: 28px 32px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__heading,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__heading { font-size: 26px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-label,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-label { font-size: 15px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-input,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-input { height: 52px; font-size: 15px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__continue-button,
  .ms-password-reset.ms-password-reset .ms-password-reset__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__continue-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__email-verification-button { height: 52px; font-size: 15px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-success-text { font-size: 15px; line-height: 22px; }
}

/* ========== PHONE ONLY (below 768px): tight logo slice, so the card sits right under the logo ========== */
@media (max-width: 767px) {
  .phibro-login-wrapper.phibro-login-wrapper::before,
  .ms-password-reset.ms-password-reset::before,
  .ms-password-reset-verification.ms-password-reset-verification::before {
    aspect-ratio: 4.864;          /* slice = 3% -> 12.5% of the image height (just the logo) */
    margin-bottom: 6px;
    background-position: 0 3.31%; /* 0.03 / (1 - 0.095) */
    -webkit-mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
    mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
  }
}

/* ========== 1024px - 1279px: narrower, compact card so it never covers the image ========== */
@media (min-width: 1024px) and (max-width: 1279px) {
  /* sign in */
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in { padding: 20px 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container {
    box-sizing: border-box;
    width: 35vw;
    min-width: 340px;
    max-width: 470px;
    margin: 0 2% 0 auto;
    padding: 22px 24px;
  }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 22px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { margin: 4px 0 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 13px; line-height: 18px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 10px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item:first-child { margin-top: 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 42px; font-size: 14px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 8px 0 12px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 42px; }

  /* account verification + change password */
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container {
    box-sizing: border-box;
    width: 35vw;
    min-width: 340px;
    max-width: 470px;
    margin: 0 2% 0 auto;
    padding: 22px 24px;
  }
  .ms-password-reset.ms-password-reset .ms-password-reset__heading,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__heading { font-size: 22px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item { margin-top: 10px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-label,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-label { font-size: 13px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-input,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-input { height: 42px; font-size: 14px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__continue-button,
  .ms-password-reset.ms-password-reset .ms-password-reset__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__continue-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__email-verification-button { height: 42px; min-height: 0; margin-top: 8px; font-size: 14px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-success-text { font-size: 13px; line-height: 18px; }
}

/* ========== SHORT SCREENS (mobile + tablet, up to 760px tall): compact password pages ========== */
@media (max-width: 1023px) and (max-height: 760px) {
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container { padding: 14px 16px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__heading,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__heading { font-size: 20px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item { margin-top: 8px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-label,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-label { font-size: 12px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__account-item-input,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__account-item-input { height: 38px; font-size: 13px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__continue-button,
  .ms-password-reset.ms-password-reset .ms-password-reset__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__continue-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__cancel-button,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__email-verification-button { height: 38px; margin-top: 8px; font-size: 13px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-error-text,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__page-success-text { font-size: 12px; line-height: 16px; }
}

/* ========== PHONE, SHORT SCREENS (up to 720px tall, e.g. 425x607): compact sign in card, smaller artwork ========== */
@media (max-width: 767px) and (max-height: 720px) {
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification { --phibro-art-w: 340px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in { padding-bottom: 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container { padding: 14px 16px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 20px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { margin: 2px 0 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 12px; line-height: 16px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item:first-child { margin-top: 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 38px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 6px 0 8px; font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 40px; }
}

/* ========== VERY SHORT SCREENS (up to 600px tall) ========== */
@media (max-width: 1023px) and (max-height: 600px) {
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification { --phibro-art-w: 340px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container { padding: 12px 16px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 20px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { margin: 2px 0 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 12px; line-height: 16px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item:first-child { margin-top: 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 38px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 6px 0 8px; font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 38px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container { padding: 12px 16px; }
}

/* ===== TABLET, SHORT HEIGHT (up to 800px tall): compact card so the animals stay visible ===== */
@media (min-width: 768px) and (max-width: 1023px) and (max-height: 800px) {
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification { --phibro-art-w: 560px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container { max-width: 560px; padding: 18px 28px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 22px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { margin: 4px 0 10px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 13px; line-height: 18px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 10px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item:first-child { margin-top: 0; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 42px; font-size: 14px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 8px 0 12px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 42px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container { max-width: 560px; padding: 18px 28px; }
}

/* ===== TABLET, VERY SHORT (up to 650px tall, e.g. 768x607) ===== */
@media (min-width: 768px) and (max-width: 1023px) and (max-height: 650px) {
  .phibro-login-wrapper.phibro-login-wrapper,
  .ms-password-reset.ms-password-reset,
  .ms-password-reset-verification.ms-password-reset-verification { --phibro-art-w: 420px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__container { padding: 12px 24px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-heading { font-size: 20px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext { margin: 2px 0 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext h6,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-signin-subtext p { font-size: 12px; line-height: 16px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item { margin-top: 8px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__account-item-label { font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .phibro-input,
  .phibro-login-wrapper.phibro-login-wrapper .phibro-field input { height: 38px; font-size: 13px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__forget-password { margin: 6px 0 8px; font-size: 12px; }
  .phibro-login-wrapper.phibro-login-wrapper .ms-sign-in__sign-in-button.phibro-signin-btn { height: 38px; }
  .ms-password-reset.ms-password-reset .ms-password-reset__container,
  .ms-password-reset-verification.ms-password-reset-verification .ms-password-reset-verification__container { padding: 12px 24px; }
}