/* Shared overview layout. Detail galleries retain their natural proportions. */
:is(.dining-card-photo,.product-card-photo,.category-tile-photo),
.outlet-products .outlet-main-photo {
  position:relative;display:block!important;width:100%;aspect-ratio:1!important;
  height:auto!important;max-height:none!important;flex:none;overflow:hidden;background:#eee9e0;
}
:is(.dining-card-photo,.product-card-photo,.category-tile-photo) img,
.outlet-products .outlet-main-photo img {
  position:absolute;inset:0;display:block!important;width:100%!important;height:100%!important;
  max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;
  object-position:center!important;transform:none!important;
}
.dining-model-grid,.category-overview,.gallery-grid,.outlet-products {
  grid-auto-rows:auto;align-items:stretch;
}
.dining-card-copy {
  flex:0 0 auto;gap:12px;padding:20px;justify-content:flex-start;
}
.dining-card-copy h3 {min-height:0;margin:0; font-size:clamp(25px,2.2vw,30px);line-height:1.2}
.dining-card-copy p,.dining-card-copy .table-card-price {
  flex:0 0 auto;min-height:0;margin:0;line-height:1.55;
}
.dining-card-copy a.product-info-button {margin-top:2px}
.product-card-copy {flex:0 0 auto;gap:12px;justify-content:flex-start;padding-top:16px}
.product-card-copy>h3,.product-card-copy>p,.product-card-copy>p:not(.product-card-reference){margin:0}
.product-card-copy a.product-info-button {margin-top:2px}
.category-tile {align-self:stretch}
.category-tile h3 {margin-top:14px}
.category-tile a.product-info-button {margin-top:14px}
.outlet-products .outlet-item {height:auto;justify-content:flex-start;gap:18px}
.outlet-products .outlet-item-copy {flex:0 0 auto;justify-content:flex-start}
.outlet-products .outlet-item-top:empty {display:none}
.outlet-products .outlet-item h2 {margin-bottom:12px}
/* Align text rows within each desktop row, without stretching paragraphs. */
@supports(grid-template-rows:subgrid){
  @media(min-width:761px){
    .dining-model-grid {row-gap:0}
    .dining-card {display:grid;grid-template-rows:subgrid;grid-row:span 6;height:auto;margin-bottom:26px}
    .dining-card-copy {display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;padding:18px 20px 20px}
    .dining-card-copy>h3,.dining-card-copy>p {margin:0 0 12px;align-self:start}
    .dining-card-copy>a.product-info-button {align-self:start;justify-self:start;margin:2px 0 0}
  }
}
@media(max-width:760px){
  .dining-model-grid,.home-category-first .category-overview,.category-overview,
  .gallery-grid,.outlet-products {grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:28px;align-items:start}
  .dining-card {height:auto}
  .dining-card-copy {padding:18px;gap:12px}
  .dining-card-copy h3 {font-size:28px;min-height:0}
  .product-card-copy {flex:none}
  .outlet-products.section {gap:30px;padding-inline:6%}
  .outlet-products .outlet-item {height:auto;padding-bottom:26px}
  .outlet-products .outlet-item:nth-last-child(2) {border-bottom:1px solid var(--line)}
  .outlet-products .outlet-description,.outlet-products .outlet-dimensions {font-size:16px}
  .outlet-products .outlet-ready {font-size:14px}
  .outlet-products .outlet-thumb {flex-basis:60px;height:60px}
}
/* Outlet: three finished products per row on desktop. */
@media(min-width:1024px){
 .outlet-products{grid-template-columns:repeat(3,minmax(0,1fr))}
 .outlet-products .outlet-item h2{font-size:clamp(25px,2.3vw,34px)}
 .outlet-products .outlet-item-top{min-height:38px;margin-bottom:14px}
 .outlet-products .outlet-item-top:empty{display:block}
}
