.product__accordion {
  border-top: none;
  margin-bottom: 1.2rem;
  border-bottom: none;

  &:last-of-type {
    margin-bottom: 0;
  }

  summary {
    padding: 1.6rem 4.2rem 1.6rem 0;
    border-bottom: 0.1rem solid var(--color-primary-a);

    .svg-wrapper__accordion {
      svg {
        transform: rotate(0deg);
        transition: transform var(--duration-short) var(--ease-out-slow);
      }
    }
  }

  summary[aria-expanded="true"] {
    .svg-wrapper__accordion {
      svg {
        transform: rotate(180deg);
      }
    }
  }

  .accordion__content {
    padding: 0 !important;

    .accordion__content__document-content {
      display: flex;
      justify-content: space-between;
      gap: 1.6rem;

      p {
        margin: 0;
        padding: 0;
      }

      a {
        text-decoration: none;
      }

      & + .accordion__content__document-content {
        margin-top: 1.2rem;
      }

      & + .accordion__content__document-title {
        margin-top: 2.4rem;
      }
    }
  }
}

.summary__title {
  h2 {
    color: var(--color-primary);
    font-size: 2.0rem;
  }
}

.page-width {
  .product-detail {
    gap: 1.6rem;

    @media screen and (min-width: 750px) {
      gap: 4.8rem;
    }

    h1 {
      font-size: 2.8rem;
      line-height: 3.2rem;

      @media screen and (min-width: 750px) {
        font-size: 4.8rem;
        line-height: 5.6rem;
      }
    }

    .card__badge {
      position: relative;
      margin-bottom: 2rem;
      margin-top: 0;
      top: 0;
      left: 0;
    }

    .column__row {
      svg {
        width: 1.2rem;
      }
      svg.icon-checkmark {
        color: var(--color-secondary-b);
      }
    }

    .two-column-layout {
      display: flex;
      gap: 1rem;
      justify-content: space-between;
      flex-direction: column;
      margin-top: 2.4rem;
      margin-bottom: 0;

      @media screen and (min-width: 991px) {
        flex-direction: row;
        margin-top: 3.2rem;
      }

      .stock-caption,
      .pill {
        font-size: 1.4rem;
        line-height: 1.8rem;
        font-weight: 400;
        background: transparent;
      }

      .product__tax {
        margin-bottom: 0;
        padding-top: 0.8rem;
      }

      .quantity__wrapper {
        margin-top: 0;
      }
    }

    .two-column-layout + .two-column-layout {
      margin-top: 2.4rem;

      @media screen and (min-width: 991px) {
        margin-top: 3.2rem;
      }
    }

    .two-column-layout--centered {
      margin-top: 2.4rem;

      @media screen and (min-width: 991px) {
        align-items: center;
      }
    }

    .product__modal-opener {
      .product__media-icon {
        opacity: 1 !important;
        left: unset;
        right: 0;
        top: 0;
        background: var(--color-primary-b);
        border: none;
        width: 4.4rem;
        height: 4.4rem;

        @media screen and (min-width: 750px) {
          right: 1.2rem;
          top: 1.2rem;
        }

        .svg-wrapper {
          svg {
            width: 2rem;
            height: 2rem;
          }
        }
      }
    }

    .product__media-item {
      @media screen and (min-width: 750px) {
        border: 1px solid var(--color-primary-b);
        border-radius: var(--border-radius);
        padding: 2rem;
      }
    }

    .product-media-container {
      border: 1px solid var(--color-primary-b);
      border-radius: var(--border-radius);
      padding: 1rem;

      @media screen and (min-width: 750px) {
        border: none;
        border-radius: unset;
        padding: unset;
      }
    }

    .product__media-wrapper {
      .thumbnail {
        img {
          object-fit: contain;
        }
      }
    }

    .product__title {
      margin-top: 0;
    }

    .product__image {
      display: flex;
      margin-top: 3rem;
      margin-bottom: 6rem;

      @media screen and (min-width: 750px) {
        margin-top: 0;
        margin-bottom: 6rem;
      }

      img {
        object-fit: contain;
        width: 40%;

        @media screen and (min-width: 750px) {
          width: 35%;
        }

        @media screen and (min-width: 991px) {
          width: 20%;
        }
      }
    }

    .product__media {
      height: 390px !important;
      padding-top: 0 !important;

      @media screen and (min-width: 750px) {
        height: 557px !important;
      }

      img {
        max-height: 390px !important;
        object-fit: contain !important;

        @media screen and (min-width: 750px) {
          max-height: 557px !important;
        }
      }
    }

    .product__info-wrapper {
      border-radius: 0.8rem;
      width: calc(55% - 4.8rem - var(--grid-desktop-horizontal-spacing) / 2);
      padding-right: 0;

      .product__info-container {
        max-width: 100%;
        container: info-container / inline-size;
      }

      .volume-pricing-note {
        margin-bottom: 0;
      }

      .quantity-popover__info {
        display: block;
        position: relative;
        transform: none;
        top: auto;
        margin-top: 0;
        margin-bottom: 2.4rem;

        .parent-display {
          margin-top: 0;
        }
      }
    }

    .slider-mobile-gutter .slider-button:disabled {
      display: none;
    }

    .thumbnail {
      transition: opacity var(--duration-default) var(--ease-out-slow);
    }

    .thumbnail-slider {
      margin-right: 11.0rem;
    }

    .progress-bar-container {
      position: absolute;
      left: 0;
      overflow: hidden;
      z-index: 15;
    }

    .slider-button {
      position: absolute;
      background: white;
      z-index: 5;
      border-radius: 100%;
      width: 2.8rem;
      height: 2.8rem;
      align-items: center;
      justify-content: center;

      .svg-wrapper {
        height: unset;
        width: unset;
      }

      svg {
        height: unset;
        width: unset;
      }
    }

    .slider-button--prev {
      left: 3.5rem;
    }

    .slider-button--next {
      right: 3.5rem;
    }

    .price-item {
      color: var(--color-secondary);
      font-weight: 600;
      font-size: 2.4rem;
      line-height: 2.8rem;

      @media screen and (min-width: 750px) {
        font-size: 3.2rem;
        line-height: 3.6rem;
      }
    }

    .quantity__wrapper {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 1.6rem;
      margin-top: 3.2rem;

      .product-form__input {
        max-width: 0;
        margin: 0;
      }
    }

    .stock-pill__wrapper {
      display: flex;
      gap: 0.8rem;
      align-items: center;
      margin-bottom: 0.8rem;
      
      &:last-of-type {
        margin-bottom: 0;
      }

      p {
        margin: 0;
      }
    }

    .pill {
      text-transform: unset;
    }

    .product__tax {
      margin-bottom: 3.2rem;
    }

    .product__sku {
      color: var(--color-primary-a);
      font-size: 1.4rem;
      line-height: 1.8rem;
    }

    .product__sku__lead {
      margin-right: 0.8rem;
    }

    .svg-wrapper__accordion {
      padding: 0.3rem;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0;
      width: 1.8rem;
      height: 1.8rem;
      border: 1px solid var(--color-primary-a);
      border-radius: 0.4rem;
      position: absolute;
      right: 0;
      top: calc(50% - .2rem);

      .icon-caret {
        right: calc(50% - .5rem);
      }
    }

    .product__description {
      color: var(--color-primary);
      margin-top: 2.4rem;

      * {
        font-size: 2rem;
        line-height: 3.2rem;
      }

      a {
        text-decoration: none;
      }
    }

    .product__compare {
      display: flex !important;
      gap: 1rem;
      flex-direction: column;
      align-items: flex-start;

      @media screen and (min-width: 750px) {
        flex-direction: row;
        align-items: center;
      }
    }

    .accordion__content {
      color: var(--color-primary);
    }

    .accordion__content__document-title {
      font-size: 1.6rem;
      padding-bottom: 1.2rem;
      margin: 0 0 1.2rem;
      border-bottom: 0.1rem solid var(--color-primary-b);

      &:first-of-type {
        margin-top: 0.8rem;
      }
    }

    .accordion__title {
      font-weight: 600;
      line-height: 2.8rem;
      font-size: 2rem;
    }

    .quantity,
    .quantity::before,
    .quantity::after,
    .progress-bar-container {
      border-radius: var(--buttons-radius);
    }

    .quantity::before,
    .quantity::after {
      border: 1px solid var(--color-primary-a);
    }

    .quantity {
      padding: 1.2rem;
      border: none;
      background: white;
      width: max-content;
      overflow: hidden;

      .progress-bar-container {
        top: 0;
      }

      &:after {
        box-shadow: none;
      }

      .quantity__input {
        max-width: calc(3.5rem / var(--font-body-scale));
      }

      .quantity__button {
        width: calc(2.4rem / var(--font-body-scale));

        .svg-wrapper {
          width: 1.2rem;
        }
      }
    }

    .accordion__description {
      margin-top: 0.8rem;
      padding-left: 1.6rem !important;

      @media screen and (min-width: 750px) {
        padding-left: 6.4rem !important;
      }
    }

    .product__compare {
      margin-bottom: 0;
      padding-bottom: 3.6rem;
      border-bottom: 1px solid var(--color-primary-b);
    }
  }

  @media screen and (min-width: 750px) {
    .product__column-sticky {
      top: 19rem;
    }
  }
}

.aasaved-cart-component-content input {
  background: none !important;
  border: 1px solid var(--color-primary-a) !important;
  padding: 0.8rem !important;
  height: auto !important;

  @media screen and (min-width: 1200px) {
    padding: 1.2rem !important;
  }
}

.aasaved-cart-dropdown-header {
  border: none !important;
  padding: 3.2rem 3.2rem 0 !important;
  margin-bottom: 0;
}

.aasaved-cart-save {
  padding: 0;
  gap: 0.4rem !important;

  @media screen and (min-width: 1200px) {
    padding: 1.2rem !important;
    gap: 0.8rem !important;
  }

  span {
    font-size: 1.6rem !important;

    @media screen and (min-width: 750px) {
      font-size: 1.2rem !important;
    }

    @media screen and (min-width: 1200px) {
      font-size: 1.6rem !important;
    }
  }
}

.aasaved-cart-button {
  padding: 1.2rem 1.6rem !important;
  background: var(--color-secondary) !important;
  color: var(--color-secondary-a) !important;
  font-weight: 600 !important;
  height: auto !important;
  border: none !important;
  font-size: 1.2rem !important;

  @media screen and (min-width: 1200px) {
    font-size: 1.6rem !important;
    padding: 1.2rem 1.6rem !important;
  }
}

.aasaved-cart-item {
  & + .aasaved-cart-item {
    border-top: 1px solid var(--color-primary-b) !important;
  }
}

.aasaved-cart-component {
  padding: 1.6rem 3.2rem !important;
}

.product__title--no-image {
  margin-top: 0 !important;
}
