@use "../base" as *; @use "../abstracts" as *; .paragraph--type--image-gallery { margin-bottom: 48px; .gallery { &__header { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1px solid $light-gray; .field--name-field-title { color: $dark-gray; font-size: 1.75rem; font-weight: 700; line-height: 2.25rem; @include breakpoint(medium) { font-size: 2rem; line-height: 2.5rem; } } } &__count { flex: 0 0 auto; color: $mid-gray; font-size: 0.875rem; line-height: 1.25rem; } &__grid { display: grid; grid-template-columns: 1fr; gap: 10px; @include breakpoint(small) { grid-template-columns: repeat(2, minmax(0, 1fr)); } @include breakpoint(large) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } } &__item { position: relative; display: block; overflow: hidden; min-height: 220px; border-radius: 6px; background: #f7f7f7; color: white; text-decoration: none; @include breakpoint(medium) { min-height: 260px; } &:hover, &:focus-visible { img { transform: scale(1.035); } .gallery__overlay { opacity: 1; } } img { width: 100%; height: 100%; min-height: 220px; object-fit: cover; transition: transform 0.28s ease; @include breakpoint(medium) { min-height: 260px; } } &--featured { @include breakpoint(small) { grid-column: span 2; } @include breakpoint(large) { grid-column: span 2; grid-row: span 2; min-height: 534px; img { min-height: 534px; } } } } &__overlay { position: absolute; inset: 0; display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; padding: 16px; background: linear-gradient(180deg, rgba(35, 38, 50, 0) 35%, rgba(35, 38, 50, 0.78) 100%); opacity: 1; transition: opacity 0.2s ease; @include breakpoint(large) { opacity: 0; } } &__position, &__action { display: inline-flex; align-items: center; min-height: 30px; border-radius: 4px; font-size: 0.8125rem; font-weight: 600; line-height: 1rem; } &__position { padding: 0 10px; background: rgba(255, 255, 255, 0.18); backdrop-filter: blur(8px); } &__action { padding: 0 12px; background: $brand-green; } } }