/* Reserve the same space used by the catalog's Aiva panel. */
.ff-home-workspace, .ff-cart-workspace { container-type: inline-size; }
#ff-contact-modal { z-index: 9200; }
.ff-app.is-assistant-open #ff-ui-settings-menu {
  position: fixed;
  z-index: 9300;
  top: 50%;
  left: 50%;
  right: auto;
  transform: translate(-50%, -50%);
  width: min(380px, calc(100vw - 32px));
  max-height: calc(100dvh - 40px);
  overflow-y: auto;
  box-shadow: 0 20px 70px #18102455;
}
@media (min-width: 1180px) {
  .ff-app.is-assistant-open :is(.ff-home-workspace, .ff-cart-workspace, .ff-account-workspace, .ff-profile-workspace, .ff-site-footer) {
    margin-right: 460px;
    min-width: 0;
  }
  .ff-app.is-assistant-open .ff-cart-layout {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  }
  .ff-app.is-assistant-open .ff-cart-heading { flex-wrap: wrap; }
  .ff-app.is-assistant-open .ff-home-favourite-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr));
  }
  .ff-app.is-assistant-open .ff-home-favourite strong { max-width: 100%; overflow-wrap: anywhere; font-size: 22px; }
  .ff-app.is-assistant-open .ff-home-section-heading { flex-wrap: wrap; align-items: start; }
  .ff-app.is-assistant-open .ff-site-footer { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
  @container (max-width: 850px) {
    .ff-app.is-assistant-open .ff-home-aiva-poster { display: flex; flex-direction: column; min-height: 0; }
    .ff-app.is-assistant-open .ff-home-aiva-visual { position: relative; order: -1; top: auto; right: auto; width: 100%; height: auto; padding: 24px 0 0; opacity: 1; }
    .ff-app.is-assistant-open .ff-home-aiva-portrait { width: 164px; }
    .ff-app.is-assistant-open .ff-home-aiva-visual::before { width: 180px; }
    .ff-app.is-assistant-open .ff-home-aiva-orbit { display: none; }
    .ff-app.is-assistant-open .ff-home-aiva-badge { display: none; }
    .ff-app.is-assistant-open .ff-home-aiva-copy { min-height: 0; padding: 24px; }
    .ff-app.is-assistant-open .ff-home-aiva-copy h2 { font-size: 34px; }
    .ff-app.is-assistant-open .ff-home-benefits, .ff-app.is-assistant-open .ff-home-newsletter { grid-template-columns: 1fr; }
  }
  @container (max-width: 540px) {
    .ff-app.is-assistant-open .ff-cart-panel, .ff-app.is-assistant-open .ff-cart-summary { padding: 16px; }
    .ff-app.is-assistant-open .ff-cart-item { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
    .ff-app.is-assistant-open .ff-cart-product-detail { grid-column: 1 / -1; }
    .ff-app.is-assistant-open .ff-home-section-heading h2 { font-size: 28px; }
  }
}
