.product-main {
  display: flex;
  gap: 5px;
  min-height: 550px;
  @media (width < 1024px) {
    flex-direction: column;
    min-height: unset;
  }
}

.product-gallery {
  flex: auto;
  min-width: 0;
  background-color: #181e2a;
  position: relative;
  overflow: hidden;
  @media (width < 1024px) {
    aspect-ratio: 16/9;
    min-height: 320px;
  }
}

.product-gallery-slider {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  &:not(.slick-initialized) {
    visibility: hidden;
  }
  .slick-arrow {
    width: 20px;
    height: 40px;
    font-size: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='40' viewBox='0 0 20 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.9927 19.8327C19.9561 19.4221 19.7869 19.0335 19.5094 18.7227L3.54474 0.719065C3.37587 0.516356 3.16691 0.348867 2.93029 0.22657C2.69367 0.104273 2.43424 0.0296796 2.16744 0.00721505C1.90064 -0.0152495 1.63194 0.0148709 1.37733 0.0958065C1.12272 0.176742 0.887412 0.306814 0.685425 0.478297C0.483438 0.64978 0.318901 0.859154 0.201612 1.09395C0.0843234 1.32875 0.0166814 1.58418 0.00271595 1.84501C-0.0112495 2.10583 0.0287462 2.36675 0.120322 2.61218C0.211898 2.85762 0.35318 3.08257 0.535755 3.27364L15.3623 20L0.535755 36.7263C0.35318 36.9174 0.211898 37.1424 0.120322 37.3878C0.0287462 37.6332 -0.0112495 37.8941 0.00271595 38.155C0.0166814 38.4158 0.0843234 38.6712 0.201612 38.906C0.318901 39.1408 0.483438 39.3502 0.685425 39.5216C0.887412 39.6931 1.12272 39.8232 1.37733 39.9042C1.63194 39.9851 1.90064 40.0153 2.16744 39.9928C2.43424 39.9703 2.69367 39.8957 2.93029 39.7734C3.16691 39.6511 3.37587 39.4836 3.54474 39.2809L19.5094 21.2773C19.6852 21.0804 19.8185 20.8511 19.9015 20.6029C19.9846 20.3547 20.0156 20.0928 19.9927 19.8327Z' fill='white'/%3E%3C/svg%3E%0A");
    opacity: 0.4;
    transition: opacity 0.4s;
    z-index: 6;
    top: calc(50% - 20px);
    &:hover {
      opacity: 1;
    }
    &:before {
      display: none;
    }
  }
  .slick-prev {
    left: 20px;
    transform: rotateY(180deg);
  }
  .slick-next {
    right: 20px;
    transform: none;
  }
  .slick-list {
    margin: 0;
    flex: auto;
    display: flex;
    flex-direction: column;
  }
  .slick-track {
    display: flex;
    height: 100%;
  }
}

.product-gallery-slide {
  display: flex !important;
  align-items: center;
  justify-content: center;
  float: none;
  img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  iframe {
    max-height: 100%;
    aspect-ratio: 16/9;
    max-width: 100%;
  }
}

.product-form {
  flex: none;
  width: max(33.3%, 360px);
  background-color: #181e2a;
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  @media (width < 1440px) {
    padding: 24px;
    gap: 16px;
  }
  @media (width < 1024px) {
    width: auto;
    padding: 24px 16px;
  }
}

.product-title {
  text-align: center;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.2;
  @media (width < 1440px) {
    font-size: 32px;
  }
  @media (width < 1024px) {
    font-size: 24px;
  }
}

.product-price {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  white-space: nowrap;
  @media (width < 1440px) {
    font-size: 24px;
  }
  @media (width < 1024px) {
    font-size: 20px;
  }
}

.product-cost-alt {
  display: flex;
  align-items: center;
  &:before {
    content: "(";
  }
  &:after {
    content: ")";
  }
  img {
    width: 40px;
    height: 40px;
    flex: none;
    margin-left: 4px;
    object-fit: contain;
  }
}

.product-btns {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 16px;
  @media (width < 1024px) {
    gap: 16px;
    margin-top: 8px;
  }
  .add-to-cart {
    flex: auto;
    min-width: 0;
  }
  .add-wishlist {
    flex: none;
    border-radius: 50%;
    .icon {
      width: 54px;
      height: 54px;
    }
  }
}

.product-info {
  margin-top: 16px;
  padding-top: 28px;
  border-top: solid 1px #262e3d;
  display: flex;
  flex-direction: column;
  gap: 24px;
  @media (width < 1024px) {
    margin-top: 8px;
    padding-top: 24px;
    gap: 16px;
  }
}

.product-info-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  @media (width < 1440px) {
    font-size: 20px;
  }
  @media (width < 1024px) {
    font-size: 18px;
  }
}

.product-info-table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 20px;
  align-self: flex-start;
  @media (width < 1440px) {
    font-size: 18px;
  }
  @media (width < 1024px) {
    font-size: 16px;
  }
  td {
    padding: 0 80px 16px 0;
    @media (width < 1440px) {
      padding-right: 40px;
    }
    @media (width < 1024px) {
      padding: 0 24px 8px 0;
    }
    &:first-child {
      color: #535d70;
    }
    &:last-child {
      font-weight: 700;
      padding-right: 0;
    }
  }
  tr {
    &:last-child {
      td {
        padding-bottom: 0;
      }
    }
  }
}

.product-desc {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 814px;
  margin: 48px 0 96px;
  @media (width < 1024px) {
    margin: 32px 0 64px;
  }
}

.product-desc-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  @media (width < 1024px) {
    font-size: 20px;
  }
}

.product-desc-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-size: 18px;
  line-height: 1.5;
  @media (width < 1024px) {
    font-size: 16px;
  }
}

body.night {
  .product-form,
  .product-desc {
    color: #fff;
  }
  .product-price {
    color: #d9d9d9;
  }
}
