/* Scoped to the four product pages and Nous trouver. */
.mg-product-page .panel-layout > .panel-grid,
.mg-contact-page #pg-36-4 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.mg-contact-page #pg-36-4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mg-product-page .panel-layout > .panel-grid > .panel-grid-cell,
.mg-contact-page #pg-36-4 > .panel-grid-cell {
    width: auto !important;
    min-width: 0;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.mg-product-page .tg-image-widget img,
.mg-contact-page #pg-36-4 .tg-image-widget img {
    display: block;
    width: 100% !important;
    max-width: 100%;
    height: auto !important;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    border-radius: 0;
}
.mg-product-page table { width: 100% !important; table-layout: fixed; }
.mg-product-page table col:first-child { width: 73% !important; }
.mg-product-page table col:last-child { width: 27% !important; }
.mg-product-page td, .mg-product-page th { width: auto !important; overflow-wrap: anywhere; }
/* One illustration above each category; hide the old duplicate inline photos. */
.mg-product-page .textwidget img,
.mg-product-page .textwidget .wp-caption { display: none; }
.mg-product-page .panel-grid-cell .section-title-wrapper { min-height: 0; }
@media (max-width: 767px) {
    .mg-product-page .panel-layout > .panel-grid,
    .mg-contact-page #pg-36-4 { grid-template-columns: minmax(0, 1fr); }
}

/* Compact continuous price lists. */
.mg-product-page .widget_text { margin-bottom: 0 !important; }
.mg-product-page .textwidget table { margin: 0; }
.mg-product-page .textwidget td:first-child { width: 73% !important; }
.mg-product-page .textwidget td:last-child { width: 27% !important; }
/* Original Label Rouge photograph: 800 × 343, applied to every product. */
.mg-product-page .tg-image-widget img {
    aspect-ratio: 800 / 343;
    object-fit: cover;
    background: transparent;
}
/* Separate categories without reopening gaps inside their price lists. */
.mg-product-page .panel-layout > .panel-grid {
    margin-bottom: 0 !important;
    row-gap: 48px;
}
.mg-product-page .panel-layout > .panel-grid + .panel-grid {
    margin-top: 48px !important;
}
.mg-product-page .panel-layout > .panel-grid > .panel-grid-cell {
    margin-bottom: 0 !important;
}
