.sticky-floating-purchase-bar {
  inset-block-end: calc(var(--space-4) + 70px);

  @media (min-width: 750px) {
    inset-block-end: var(--space-4);
  }

  inset-inline: 1rem;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transform: translateY(0.5rem);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s;
  visibility: hidden;
  z-index: 20;

  &[data-sticky-bar-active='true'] {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;

    .bar {
      pointer-events: auto;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    transition: none;
  }

  .bar {
    align-items: center;
    background-color: var(--color-light-100);
    border-radius: 100px;
    box-shadow:
      0 3px 20px 0 rgb(41 26 24 / 25%),
      0 4px 24px rgb(0 0 0 / 12%);
    display: flex;
    gap: var(--space-3);
    max-inline-size: 100%;
    padding: 8px 8px 8px 24px;
    pointer-events: none;
    width: 100%;

    @media (min-width: 750px) {
      height: 58px;
    }
  }

  .bar-content {
    align-items: center;
    display: flex;
    flex: 1;
    gap: var(--space-3);
    min-inline-size: 0;
  }

  .product-summary {
    display: grid;
    flex: 1;
    min-inline-size: 0;
  }

  .product-details,
  .color-selection-panel {
    grid-area: 1 / 1;
  }

  .product-media {
    flex-shrink: 0;
    line-height: 0;
  }

  .product-image {
    block-size: 44px;
    border-radius: var(--radius-main);
    display: block;
    inline-size: 41px;
    -o-object-fit: cover;
       object-fit: cover;
  }

  .product-details {
    display: grid;
    gap: var(--space-1);
    min-inline-size: 0;

    @media (min-width: 750px) {
      min-width: 200px;
    }

    @media (min-width: 990px) {
      min-width: 311px;
    }
  }

  .product-title {
    font-size: var(--font-size-fixed-18);
    margin: 0;

    @media (max-width: 390px) {
      font-size: var(--font-size-fixed-16);
    }
  }

  .purchase-meta {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--font-family-secondary);
    gap: var(--space-2);
  }

  .purchase-meta:has(.price-regular.price-sold-out) {
    gap: 0;
  }

  .price-row {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    margin: 0;
  }

  .product-price {
    color: var(--color-dark-900);
    margin: 0;

    .price-regular {
      color: inherit;
      font-size: 0.75rem;
      font-weight: var(--font-weight-secondary-medium);
    }

    .price-regular.price-sold-out {
      border: 0;
      clip-path: inset(50%);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      white-space: nowrap;
      width: 1px;
    }

    @media (min-width: 750px) {
      .price-regular {
        font-size: var(--font-size-b-small);
        font-weight: var(--font-weight-secondary-semibold);
      }
    }
  }

  .selected-color-row {
    align-items: center;
    display: inline-flex;
    gap: var(--space-1);
  }

  .selected-color-value {
    font-size: var(--font-size-fixed-14);
    line-height: normal;
    text-decoration: underline;

    @media (max-width: 390px) {
      font-size: var(--font-size-fixed-12);
    }
  }

  .edit-selection-icon {
    display: inline-flex;
    line-height: 0;
  }

  .edit-selection {
    align-items: center;
    background: transparent;
    border: 0;
    color: var(--color-brand-text);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    gap: var(--space-1);
    line-height: 0;
    padding: 0;
    text-align: start;
  }

  .edit-selection svg {
    block-size: 1rem;
    inline-size: 1rem;
  }

  .edit-selection:focus-visible {
    outline: 2px solid var(--color-brand-text);
    outline-offset: 2px;
  }

  .color-selection-panel {
    align-items: center;
    display: none;
    gap: var(--space-2);
    min-inline-size: 0;
  }

  .color-selection-panel-inner {
    align-items: center;
    display: flex;
    flex: 1;
    gap: var(--space-2);
    min-inline-size: 0;
  }

  .close-color-selection {
    --icon-stroke-width: 1.5px;

    align-items: center;
    align-self: center;
    background: transparent;
    border: 0;
    color: var(--color-brand-text);
    cursor: pointer;
    display: inline-flex;
    flex-shrink: 0;
    line-height: 0;
    padding: 0;
  }

  .close-color-selection svg {
    block-size: 1.25rem;
    inline-size: 1.25rem;
  }

  .close-color-selection:focus-visible {
    outline: 2px solid var(--color-brand-text);
    outline-offset: 2px;
  }

  .swatch-region {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    min-inline-size: 0;
  }

  .product-swatches {
    --swatch-size: 32px;
    --swatch-size-selected: 27px;

    .swatch-option {
      display: none;
    }

    .swatch-list {
      flex-wrap: nowrap;
    }
  }

  .bar-action {
    flex-shrink: 0;
    margin-inline-start: auto;
    white-space: nowrap;
  }

  .purchase-cta {
    border-radius: 999px;
    font-size: var(--font-size-fixed-14);
    min-inline-size: -moz-fit-content;
    min-inline-size: fit-content;
    padding-inline: var(--space-3);

    @media (min-width: 750px) {
      font-size: var(--font-size-b-main);
    }
  }

  .purchase-cta-checkout {
    display: inline-flex;
  }

  .purchase-cta[aria-disabled='true'] {
    pointer-events: none;
  }

  &[data-color-selection-open='true'] {
    .product-details {
      display: none;
    }

    .color-selection-panel {
      display: flex;
    }

    .purchase-cta-checkout {
      display: inline-flex;
    }
  }

  @media (min-width: 750px) {
    inset-block-end: var(--space-6);
    inset-inline: var(--site-margin);

    .sticky-floating-purchase-bar-wrapper {
      display: block;
      inline-size: 100%;
    }

    .bar {
      gap: var(--space-6);
      margin-inline: auto;
      max-inline-size: 1258px;
      padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
      width: 100%;
    }

    .bar-content {
      gap: var(--space-6);
    }

    .product-summary {
      align-items: center;
      display: flex;
      gap: var(--space-4);
    }

    .product-details,
    .color-selection-panel {
      grid-area: auto;
    }

    .color-selection-panel {
      display: flex;
    }

    .purchase-meta {
      display: flex;
    }

    .edit-selection .edit-selection-icon {
      display: none;
    }

    .selected-color-value {
      text-decoration: none;
    }

    .close-color-selection {
      display: none;
    }

    .purchase-cta {
      min-inline-size: 9.5rem;
      padding-inline: var(--button-padding-inline);
    }

    &[data-color-selection-open='true'] {
      .product-details {
        display: grid;
      }
    }
  }
}
