/* platinum accent for section topper */
.be-results .cs-topper { color: var(--platinum); }

/* gentle hover: slight zoom + soft overlay */
#gallery-379 .cs-image { position: relative; overflow: hidden; }
#gallery-379 .cs-image::after {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(60% 60% at 50% 50%, rgba(0,0,0,.12), rgba(0,0,0,0) 60%);
  opacity: 0; transition: opacity .35s ease;
  pointer-events: none;
}
#gallery-379 .cs-image img {
  transition: transform .45s ease, filter .45s ease;
  will-change: transform;
}
#gallery-379 .cs-image:hover img { transform: scale(1.03); }
#gallery-379 .cs-image:hover::after { opacity: 1; }

/* Before/After badge */
.be-badge {
  position: absolute; top: .5rem; left: .5rem;
  padding: .35rem .6rem;
  border-radius: .5rem;
  font-size: .8rem; font-weight: 700; line-height: 1;
  color: #111; background: var(--platinum); /* subtle, readable */
  box-shadow: 0 2px 6px rgba(0,0,0,.12);
}
.be-badge--after { color: #fff; background: var(--primary); } /* a touch of red “in certain areas” */
.be-badge--before { color: #111; background: var(--platinum); }

/* keep the grid tidy: two-up on mobile, three-up on desktop like your template */
@media (min-width: 64rem) {
  #gallery-379 .cs-image { width: 32.8%; }
}
/*-- -------------------------- -->
<---          Gallery           -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #gallery-379 {
    padding: var(--sectionPadding);
  }
  #gallery-379 .cs-container {
    width: 100%;
    max-width: 59.6875rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #gallery-379 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: center;
  }
  #gallery-379 .cs-gallery {
    width: 100%;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    /* 16px - 20px */
    gap: clamp(1rem, 1.5vw, 1.25rem);
  }
  #gallery-379 .cs-image {
    border-radius: 1.25rem;
    width: 46%;
    /* 150px - 300px */
    height: clamp(9.375rem, 39vw, 18.75rem);
    max-width: 21.875rem;
    /* clips the image corners */
    overflow: hidden;
    display: block;
    position: relative;
  }
  #gallery-379 .cs-image img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    /* makes it act like a background image */
    object-fit: cover;
  }
}
/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
  #gallery-379 .cs-image {
    width: 32.8%;
    max-width: 19.0625rem;
    /* 300px - 400px */
    height: clamp(18.75rem, 30vw, 25rem);
    aspect-ratio: 1;
  }
}
                                