.vtb-section {
  padding: 56px 24px;
}

.vtb-section-soft {
  background: #eff4ed;
}

.vtb-title {
  margin-bottom: 28px;
}

.vtb-cards {
  gap: 18px;
}

.vtb-card {
  height: 100%;
  padding: 24px;
  background: #fff;
  border: 1px solid #dce5dc;
  border-radius: 8px;
}

.vtb-card h3 {
  margin-top: 0;
}

.vtb-card p {
  color: #65716d;
}

.vtb-button .wp-block-button__link,
.wp-block-button.vtb-button .wp-block-button__link {
  background: #527965;
  color: #fff;
  border-radius: 8px;
  font-weight: 800;
  text-decoration: none;
}

.vtb-preview {
  align-items: center;
  gap: 40px;
}

.vtb-tilt {
  position: relative;
  perspective: 1000px;
}

.vtb-tilt-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #dce5dc;
  box-shadow: 0 16px 40px rgba(34, 48, 44, .10);
  transform: rotateX(var(--vtb-tilt-x, 0deg)) rotateY(var(--vtb-tilt-y, 0deg));
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease;
}

.vtb-tilt:hover .vtb-tilt-image,
.vtb-tilt.is-moving .vtb-tilt-image {
  box-shadow: 0 24px 56px rgba(34, 48, 44, .18);
}

.vtb-tilt-shine {
  position: absolute;
  inset: 0;
  border-radius: 8px;
  pointer-events: none;
  background: radial-gradient(circle at var(--vtb-shine-x, 50%) var(--vtb-shine-y, 50%), rgba(255, 255, 255, .34), transparent 34%);
  opacity: .55;
}

@media (max-width: 782px) {
  .vtb-section {
    padding: 40px 18px;
  }
}
