/* V22: stable gallery, no cropping and no excessive space between columns.
   Only desktop/tablet. Keep phone gallery unchanged. */
@media screen and (min-width:600px) {
  body .slider {
    height:clamp(220px, 30vw, 390px)!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    padding:0 0 24px!important;
    box-sizing:content-box!important;
    position:relative!important;
  }
  body .slider .slide {
    position:absolute!important;
    inset:0 0 24px!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    column-gap:clamp(6px, 1vw, 12px)!important;
    width:100%!important;
    height:auto!important;
    align-items:center!important;
    justify-items:stretch!important;
    justify-content:stretch!important;
  }
  body .slider .slide img {
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0!important;
    flex:none!important;
  }
  body .slider .slider-dots {bottom:2px!important;}
}
/* Keep the about photo beside the text at tablet widths. */
@media screen and (min-width:600px) and (max-width:1024px) {
  body .about {display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;gap:clamp(16px,3vw,28px)!important;align-items:center!important;}
  body .about > img {grid-column:1!important;grid-row:1!important;width:100%!important;height:auto!important;max-height:420px!important;object-fit:contain!important;}
  body .about > .about-copy {grid-column:2!important;grid-row:1!important;min-width:0!important;max-width:none!important;}
}
/* Phone: one small typography adjustment only. */
@media screen and (max-width:599px) {
  body .review h2 {font-size:clamp(24px, 6.4vw, 29px)!important;line-height:1.2!important;}
}
