.page-layout-product-project .product-project-page {
    margin-block: 0;
}

.page-layout-product-project .product-info-main {
    width: 100%;
}

.product-project-gallery {
    width: 100%;
    padding-block: 1.5rem 2.5rem;
    background: #fff;
}

.product-project-gallery-inner {
    width: 100%;
    max-width: 1500px;
    margin-inline: auto;
}

.product-project-gallery #gallery-main {
    height: clamp(320px, 58vw, 820px);
    overflow: hidden;
    margin-bottom: 1rem;
}

.product-project-gallery #gallery-main > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-project-gallery #thumbs {
    width: 100%;
    padding-inline: 1.5rem;
    margin-inline: auto;
}

@media (min-width: 40rem) {
    .product-project-gallery #thumbs {
        max-width: 40rem;
    }
}

@media (min-width: 48rem) {
    .product-project-gallery #thumbs {
        max-width: 48rem;
    }
}

@media (min-width: 64rem) {
    .product-project-gallery #thumbs {
        max-width: 64rem;
    }
}

@media (min-width: 80rem) {
    .product-project-gallery #thumbs {
        max-width: 80rem;
    }
}

@media (min-width: 96rem) {
    .product-project-gallery #thumbs {
        max-width: 96rem;
    }
}

.product-project-gallery #gallery > div.fixed #gallery-main {
    height: 75vh;
    max-height: 75vh;
}

.product-project-summary {
    padding-block: clamp(2rem, 5vw, 5rem);
    background: #f5f5f5;
}

.product-project-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(1.25rem, 3vw, 2.5rem);
}

.product-project-panel {
    min-width: 0;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    border: 1px solid #e7e5e4;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 18px 45px rgb(28 25 23 / 8%);
}

.product-project-panel:only-child {
    grid-column: 1 / -1;
    width: min(100%, 900px);
    margin-inline: auto;
}

.product-project-short-description {
    margin-bottom: 1.5rem;
    line-height: 1.625;
}

.product-project-text {
    margin-top: 1.5rem;
    line-height: 1.625;
}

.product-project-text > :first-child {
    width: 100% !important;
    padding: 1.5rem !important;
    border-left: 4px solid #57534e;
    border-radius: 0.5rem;
    background: #f5f5f4 !important;
}

.product-project-text p + p {
    margin-top: 0.75rem;
}

.product-project-text a {
    font-weight: 600;
}

.product-project-attribute-list {
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 0.375rem;
}

.product-project-attribute-row {
    display: grid;
    grid-template-columns: minmax(0, 38%) minmax(0, 62%);
}

.product-project-attribute-row:not(:last-child) {
    border-bottom: 1px solid #e5e7eb;
}

.product-project-attribute-row > * {
    min-width: 0;
    padding: 0.5rem 1rem;
}

.product-project-attribute-row .product-attribute-label {
    font-weight: 600;
    border-right: 1px solid #e5e7eb;;
}

.product-project-attribute-row .product-attribute-value {
    margin: 0;
}

.product-project-section {
    padding-block: clamp(2.5rem, 6vw, 6rem);
    background: #fff;
}

.product-project-section:nth-child(even) {
    background: #fafaf9;
}

.product-project-section-content {
    margin-top: 1.5rem;
}

.product-project-related,
.product-project-reviews {
    padding-block: clamp(2.5rem, 6vw, 5rem);
}

.product-project-related {
    background: #f5f5f5;
}

.product-project-reviews {
    background: #fff;
}

@media (max-width: 767px) {
    .product-project-gallery {
        padding-block: 1rem 2rem;
    }

    .product-project-gallery #gallery-main {
        height: clamp(280px, 90vw, 520px);
    }

    .product-project-info-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .product-project-attribute-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .product-project-attribute-row > * {
        padding-block: 0.75rem;
    }

    .product-project-attribute-row .product-attribute-label {
        padding-bottom: 0;
        font-weight: 600;
    }

    .product-project-panel:only-child {
        grid-column: auto;
    }
}
