/* Product */

.product {
    width: 100%;

    display: flex;
    gap: var(--space-xxxl);

    padding: var(--space-xxxl);
}

.product__gallery {
    width: calc(50% - (var(--space-xxxl) / 2));

    display: flex;
    flex-direction: column;
    gap: var(--space-xl);

    position: relative;
}

.product__label {
    color: var(--color-02);

    background-color: var(--color-04);

    padding: var(--space-xxs) var(--space-xs);

    position: absolute;

    top: 0;
    right: 0;

    z-index: 2;
}

.product__slider {
    width: 100%;
}

.product__slider--thumbs > .swiper-wrapper > .product__img-slide {
    cursor: pointer;
}

.product__img-slide-img-wrapper {
    width: 100%;
    
    display: flex;

    position: relative;
}

.product__img-slide-img-wrapper > img {
    width: 100%;
    height: 100%;
}

.product__slider--thumbs > .swiper-wrapper > .swiper-slide-thumb-active > .product__img-slide-img-wrapper > .c-overlay {
    opacity: 1;

    transition: var(--transition-02);
    -webkit-transition: var(--transition-02);
}

.product__slider--thumbs > .swiper-wrapper > .swiper-slide-thumb-active > .product__img-slide-img-wrapper > .c-overlay {
    opacity: 0;
}

.product__info {
    width: calc(50% - (var(--space-xxxl) / 2));

    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

.price__block {
    display: flex;
    align-items: center;
    gap: var(--space-m);
}

.price--old {
    color: var(--color-04);

    text-decoration: line-through;
}

.product__fields-wrapper {
    width: 100%;

    display: flex;
    gap: var(--space-m);
}

.product__quantity-wrapper {
    width: calc(50% - (var(--space-m) / 2));
}

.product__quantity-wrapper--full {
    width: 100%;
}

.product__quantity {
    width: 100%;
    height: 40px;

    border: 1px solid var(--color-05);

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 calc(var(--space-xs) + var(--space-xs));
}

.product__quantity-field {
    width: calc(100% - (4 * var(--space-xs)) - (2 * 12px));

    border: none;
    border-radius: 0;

    outline: none;

    line-height: 1;

    text-align: center;

    padding: 0;

    margin: 0;

    caret-color: transparent;
    
    appearance: textfield;
    -moz-appearance: textfield;
    -webkit-appearance: none;
}

.product__quantity-field::-webkit-outer-spin-button,
.product__quantity-field::-webkit-inner-spin-button {
    margin: 0;

    appearance: none;
    -webkit-appearance: none;
}

.product__quantity-btn {
    width: 12px;
    height: 12px;
}

.product__quantity-btn > div {
    background-color: var(--color-01);
}

.product__quantity-btn--min > div:first-child {
    width: 100%;
    height: 1px;
}

.product__quantity-btn--max {
    position: relative;
}

.product__quantity-btn--max > div:first-child {
    width: 100%;
    height: 1px;
}

.product__quantity-btn--max > div:last-child {
    width: 1px;
    height: 100%;

    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);

    position: absolute;

    top: 50%;
    left: 50%;
}

.product__size-field-wrapper {
    width: calc(50% - (var(--space-m) / 2));
}

.product__size-field {
    width: 100%;
}

.size-guide {
    display: flex;
    justify-content: flex-end;
}

.size-guide__btn {
    width: max-content;

    display: flex;
    align-items: center;
    gap: var(--space-xs);
}

.size-guide__btn > img {
    width: 12px;
}

.cart-btn {
    width: 100%;

    justify-content: center;

    transition: var(--transition-02);
    -webkit-transition: var(--transition-02);
}

.cart-btn._active {
    border-color: var(--color-04);

    color: var(--color-02);

    background-color: var(--color-04);
}

.purchase-btn {
    width: 100%;

    justify-content: center;
}

.description-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

.description__label {
    font-weight: 350;
}

/* Related products */

.related-products {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xxxl);

    padding: var(--space-xxxl);
}

/* CTA */

.cta {
    background-image: url("../../assets/media/pages/home/cta.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: calc(2 * var(--space-xxxl)) var(--space-xxxl);

    position: relative;
}

.cta__body {
    width: 50%;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-m);

    position: relative;

    z-index: 2;
}

@media (max-width: 1280px) {
    
}

@media (max-width: 1024px) {
    
}

@media (max-width: 768px) {
    /* Product */

    .product {
        flex-direction: column;
    }

    .product__gallery {
        width: 100%;
    }

    .product__info {
        width: 100%;
    }

    /* CTA */

    .cta__body {
        width: 100%;
    }
}

@media (max-width: 480px) {
    
}