/* Card hover: scale */
.portfolio-item-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.portfolio-item-hover:hover {
    transform: scale(1.05);
}

/* Image: zoom on card hover */
.portfolio-item-hover .portfolio-img-hover {
    transition: transform 0.3s ease;
}
.portfolio-item-hover:hover .portfolio-img-hover {
    transform: scale(1.05);
}

/* Overlay: fade in on card hover */
.portfolio-overlay-hover {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.portfolio-item-hover:hover .portfolio-overlay-hover {
    opacity: 0.3;
}

/* Bootstrap: розміри без інлайну (TW — w-16, w-2 у @sem); імена stats__* */
.stats__icon-dim {
  width: 4rem;
  height: 4rem;
}

.stats__dot-dim {
  width: 0.5rem;
  height: 0.5rem;
  min-width: 0.5rem;
  min-height: 0.5rem;
}

.stats__pattern-diagonal {
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(
    45deg,
    transparent,
    transparent 10px,
    rgba(59, 130, 246, 0.1) 10px,
    rgba(59, 130, 246, 0.1) 20px
  );
}

.stats__pattern-dots {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(
    circle at 1px 1px,
    rgba(59, 130, 246, 0.15) 1px,
    transparent 0
  );
  background-size: 20px 20px;
}

.stats-card-hover {
  transition:
    box-shadow 0.5s ease,
    transform 0.5s ease;
}

.stats-card-hover:hover {
  box-shadow:
    0 25px 50px -12px rgb(0 0 0 / 0.25);
  transform: translateY(-0.5rem);
}

.stats-pattern-overlay-hover {
  transition: opacity 0.5s ease;
  opacity: 0.1;
}

.stats-group:hover .stats-pattern-overlay-hover {
  opacity: 0.2;
}

.stats-badge-icon-hover {
  transition: transform 0.3s ease;
}

.stats-group:hover .stats-badge-icon-hover {
  transform: scale(1.1);
}

.stats__title {
  transition: color 0.3s ease;
}

.stats-group:hover .stats__title {
  color: rgb(37 99 235);
}

.stats-border-ring-hover {
  transition: border-color 0.5s ease;
}

.stats-group:hover .stats-border-ring-hover {
  border-color: rgb(147 197 253);
}

.masonry-grid__card--hover:hover {
    transform: scale(1.05);
}

.masonry-grid__media--xl { height: 20rem; }
.masonry-grid__media--lg { height: 16rem; }
.masonry-grid__media--md { height: 18rem; }
.masonry-grid__media--sm { height: 15rem; }

.masonry-grid__img--zoom {
    transition: transform 0.5s ease;
}
.masonry-grid__card:hover .masonry-grid__img--zoom {
    transform: scale(1.1);
}

.masonry-grid__overlay--fade {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__overlay--fade {
    opacity: 1;
}

.masonry-grid__badge--fade {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__badge--fade {
    opacity: 1;
}

.masonry-grid__panel--slide {
    transform: translateY(100%);
    transition: transform 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__panel--slide {
    transform: translateY(0);
}

.rounded-stack-quote__portrait {
    width: 5rem;
    height: 5rem;
}

