/* ===================================
   ZAMOK — Product Responsive
   Адаптив карточки товара для всех брейкпоинтов
   =================================== */

/* ===== Large desktop (>1440px) ===== */
@media (min-width: 1441px) {
    .product__top {
        gap: var(--spacing-3xl);
    }
}

/* ===== Tablet (901–1024px) ===== */
@media (max-width: 1024px) {
    .product__top {
        grid-template-columns: 5fr 7fr;
        gap: var(--spacing-lg);
    }

    .product__gallery {
        position: static;
    }

    .product-info__name {
        font-size: var(--font-size-xl);
    }

    .product-info__price-current {
        font-size: 1.875rem;
    }

    .product-recommendations__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* ===== Single column (≤900px) ===== */
@media (max-width: 900px) {
    .product__top {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }

    .product__gallery {
        position: static;
        max-width: 450px;
        margin: 0 auto;
    }

    .product-gallery__main {
        border-radius: var(--radius-lg);
    }

    /* Gallery arrows: smaller on mobile */
    .product-gallery__arrow {
        opacity: 1;
        width: 34px;
        height: 34px;
    }

    .product-gallery__arrow svg {
        width: 16px;
        height: 16px;
    }

    .product-info__name {
        font-size: var(--font-size-xl);
    }

    .product-info__price-current {
        font-size: 1.75rem;
    }

    /* Hide inline cart actions on mobile, show sticky cart instead */
    .product-info__price-cart-row {
        flex-wrap: wrap;
    }

    .sticky-cart {
        display: block;
    }

    /* Sticky cart mobile */
    .sticky-cart__info {
        display: none;
    }

    .sticky-cart__actions {
        width: 100%;
    }

    .sticky-cart__btn {
        flex: 1;
    }

    /* Tabs */
    .product-tabs__tab {
        padding: 12px 16px;
        font-size: var(--font-size-xs);
    }

    /* Recommendations */
    .product-recommendations__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-md);
    }

    /* Reviews */
    .product-reviews__summary {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-md);
    }

    .product-reviews__rating-number {
        font-size: var(--font-size-3xl);
    }

    /* Drawing zoom */
    .product-drawing__zoom-result {
        display: none;
    }

    .product-drawing__zoom-lens {
        display: none;
    }

    /* Documents */
    .product-documents__list {
        max-width: 100%;
    }
}

/* ===== Small tablet (≤768px) ===== */
@media (max-width: 768px) {
    .product__gallery {
        max-width: 400px;
    }

    .product-gallery__thumbs {
        max-width: 100%;
    }

    .product-gallery__thumb {
        width: 60px;
        height: 60px;
    }

    .product-gallery__action-btn {
        width: 32px;
        height: 32px;
    }

    .product-gallery__action-btn svg {
        width: 16px;
        height: 16px;
    }
}

/* ===== Mobile portrait (<480px) ===== */
@media (max-width: 480px) {
    .product {
        padding: 0 0 var(--spacing-xl);
    }

    .product__top {
        gap: var(--spacing-md);
    }

    .product__gallery {
        max-width: 100%;
        overflow: hidden;
    }

    .product-gallery__main {
        border-radius: var(--radius-md);
    }

    .product-gallery__image {
        padding: 16px;
    }

    .product-gallery__thumbs {
        gap: 6px;
    }

    .product-gallery__thumb {
        width: 52px;
        height: 52px;
    }

    .product-info__top-row {
        flex-wrap: wrap;
    }

    .product-info__name {
        font-size: var(--font-size-lg);
        margin-bottom: var(--spacing-md);
    }

    .product-info__price-current {
        font-size: 1.5rem;
    }

    .product-info__char {
        font-size: var(--font-size-xs);
    }

    .product-variations__btn {
        padding: 6px 14px;
        font-size: var(--font-size-xs);
    }

    .product-variations__color {
        width: 28px;
        height: 28px;
    }

    /* Tabs - scrollable */
    .product-tabs__nav {
        gap: 0;
    }

    .product-tabs__tab {
        padding: 10px 14px;
        font-size: var(--font-size-xs);
    }

    /* Recommendations */
    .product-recommendations__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-sm);
    }

    /* Section title */
    .product__section-title {
        font-size: var(--font-size-xl);
    }

    /* Characteristics table */
    .product-characteristics__table {
        font-size: var(--font-size-xs);
    }

    .product-characteristics__label,
    .product-characteristics__value {
        padding: 8px 8px 8px 0;
    }

    /* Reviews */
    .product-reviews__item {
        padding: var(--spacing-md);
    }
}

/* ===== Gallery arrows: always visible on touch ===== */
@media (hover: none) {
    .product-gallery__arrow {
        opacity: 1;
    }
}
