/* Catalogue cards: optional, edge-aligned images and content-driven text height.
   The old 112px, bottom-aligned specification box clipped its first row when
   values wrapped. Every title, subtitle and parameter can now grow naturally. */
main.catalog-v50 .catalog-results .catalog-grid.catalog-grid-v51{
  grid-auto-rows:auto!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-link{
  grid-template-rows:auto minmax(min-content,1fr)!important;
  height:auto!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-content{
  display:flex;
  flex-direction:column;
  flex:1 0 auto;
  min-width:0;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-image-link{
  display:block;
  flex:none;
  width:100%;
  min-height:0;
  color:inherit;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-content .catalog-card-image{
  margin:0;
  aspect-ratio:1/1!important;
  border-bottom:0!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-content .catalog-card-image img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
}
main.catalog-v50 .catalog-card-mobile-cta{
  display:none!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  flex:1 0 auto;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-content .catalog-card-body{
  margin-top:var(--catalog-title-offset,0px);
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body > h2,
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body > h3,
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body > h4,
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-subtitle,
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-series-label{
  display:block!important;
  -webkit-line-clamp:unset!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body > h3 a{
  display:inline;
  min-height:0;
  color:inherit;
  text-decoration:none;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-body > h3 a:hover{
  text-decoration:underline;
  text-underline-offset:.15em;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list,
main.catalog-v50 .catalog-card.catalog-card-v51.catalog-rich-card .catalog-card-detail-list{
  width:100%;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  align-content:start!important;
  margin:12px 0 0!important;
  row-gap:5px!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list .catalog-card-detail-best-for{
  margin-top:var(--catalog-best-offset,0px);
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list dt{
  flex:0 0 auto;
  max-width:48%;
  overflow-wrap:normal!important;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list dd{
  min-width:0;
}
main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-tags{
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
main.catalog-v50 .catalog-card-thumbnails{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  width:100%;
  box-sizing:border-box;
  margin:14px 0 0;
  padding:0;
}
main.catalog-v50 .catalog-card-thumbnail{
  display:block;
  position:relative;
  width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:1;
  margin:0;
  padding:0;
  border:1px solid #dedede;
  border-radius:0;
  box-sizing:border-box;
  background:#fff;
  cursor:zoom-in;
  overflow:hidden;
}
main.catalog-v50 .catalog-card-thumbnail img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  padding:0;
  object-fit:contain;
  transform:none;
  filter:none;
}
main.catalog-v50 .catalog-card-thumbnail:hover{
  border-color:#555;
}
main.catalog-v50 .catalog-card-thumbnail:focus-visible,
main.catalog-v50 .catalog-card-image-link:focus-visible{
  outline:3px solid #bb2430;
  outline-offset:-3px;
}
.catalog-image-dialog{
  width:min(960px,calc(100vw - 32px));
  max-width:none;
  max-height:calc(100dvh - 32px);
  margin:auto;
  padding:0;
  border:0;
  background:#fff;
  color:#181818;
  box-sizing:border-box;
  overscroll-behavior:contain;
}
.catalog-image-dialog::backdrop{
  background:rgba(0,0,0,.76);
}
.catalog-image-dialog-panel{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:16px;
}
.catalog-image-dialog-close{
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:flex-end;
  gap:12px;
  min-height:44px;
  margin:0 0 8px;
  padding:8px 14px;
  border:1px solid #b9b9b9;
  border-radius:0;
  background:#fff;
  color:#181818;
  font:inherit;
  cursor:pointer;
}
.catalog-image-dialog-close span{
  font-size:24px;
  line-height:1;
}
.catalog-image-dialog-image{
  display:block;
  width:100%;
  height:auto;
  max-height:calc(100dvh - 180px);
  object-fit:contain;
}
.catalog-image-dialog-caption{
  max-width:100%;
  margin:14px 0 0;
  font-size:16px;
  line-height:1.5;
  overflow-wrap:anywhere;
  text-align:center;
}
@media(max-width:800px){
  main.catalog-v50 .catalog-card-thumbnails{gap:7px;margin-top:12px;}
  main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list{margin:12px 0 12px!important;}
  main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list dt{max-width:none;}
  main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list .catalog-card-detail-output,
  main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-detail-list .catalog-card-detail-best-for{display:grid!important;}
  main.catalog-v50 .catalog-card.catalog-card-v51 .catalog-card-tags span:nth-child(n+3){display:inline!important;}
  main.catalog-v50 .catalog-card-mobile-cta{display:flex!important;text-decoration:none;}
}
