.logo-container {
	position: relative;
	width: 96px;
	height: 96px;
	background: rgb(255 255 255 / 0.05);
	clip-path: var(--clip-path-squircle-24) !important;
	box-shadow: inset 0px 0px 1px 2px #28282842;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	backdrop-filter: blur(20px);
}

.logo-container:hover {
	transform: translateY(-2px);
}

.logo-container img {
	width: 64px;
	height: 64px;
	object-fit: contain;
}

.animation-container{
	display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.transfer-wrapper {
	position: relative;
	flex: 1;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.files-container {
	position: absolute;
	width: 100%;
	height: 100%;
}

.file-item {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 8px;
	opacity: 0;
	padding: 8px 12px;
	color: #eee;
	background: #020817;
	box-shadow: inset 0px 0px 1px 2px #28282842, 0 2px 8px rgba(0, 0, 0, 0.06);
	border-radius: 8px;
	white-space: nowrap;
	animation: floatFile 4s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

.file-item:nth-child(1) {
	animation-delay: 0s;
	top: 20%;
}

.file-item:nth-child(2) {
	animation-delay: .6s;
	top: 50%;
}

.file-item:nth-child(3) {
	animation-delay: 1.3s;
	top: 35%;
}

/* File icon */
.file-icon {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	font-size: 12px;
}

.file-icon.image {
	background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.file-icon.doc {
	background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.file-icon.video {
	background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
}

.file-icon svg {
	width: 14px;
	height: 14px;
	fill: white;
}

.file-name {
	font-size: 13px;
	color: #9ab6e3;
	font-weight: 500;
}

.file-size {
	font-size: 11px;
	color: #474b50;
	font-weight: 400;
}

@keyframes floatFile {
	0% {
		left: -120px;
		opacity: 0;
		transform: translateY(10px) scale(0.9) rotate(-2deg);
	}

	8% {
		opacity: 1;
		transform: translateY(0) scale(1) rotate(0deg);
	}

	15% {
		transform: translateY(-3px) scale(1) rotate(1deg);
	}

	25% {
		transform: translateY(0) scale(1) rotate(0deg);
	}

	35% {
		transform: translateY(-2px) scale(1) rotate(-1deg);
	}

	50% {
		transform: translateY(0) scale(1) rotate(0deg);
	}

	65% {
		transform: translateY(-3px) scale(1) rotate(1deg);
	}

	75% {
		transform: translateY(0) scale(1) rotate(0deg);
	}

	92% {
		opacity: 0.8;
		transform: translateY(0) scale(1.1) rotate(0deg);
	}

	100% {
		left: calc(80% + 120px);
		opacity: 0;
		transform: translateY(-10px) scale(0.9) rotate(2deg);
	}
}

.transfer-road {
	position: absolute;
	width: 100%;
	height: 40px;

	background: linear-gradient(to bottom,
			transparent 0%,
			#ffffff0d 20%,
			#363636a2 50%,
			#ffffff0d 80%,
			transparent 100%);
	display: none;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

/* Dashed road line */
.road-dashes {
	position: absolute;
	width: 100%;
	height: 2px;
	display: flex;
	gap: 12px;
	animation: dashMove 2s linear infinite;
}

.road-dash {
	min-width: 20px;
	height: 2px;
	background: #d1d5db6c;
	border-radius: 1px;
}


.hero-pattern {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle at 25% 25%, rgba(59, 130, 246, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 75% 75%, rgba(146, 51, 234, 0) 0%, transparent 50%);
}

@keyframes dashMove {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-32px);
	}
}
/* Responsive */
@media (max-width: 768px) {
	.animation-container {
		gap: 2rem;
	}

	.logo-container {
		width: 72px;
		height: 72px;
	}

	.logo-container img {
		width: 48px;
		height: 48px;
	}

	.file-item {
		padding: 6px 10px;
		font-size: 12px;
	}

	.file-icon {
		width: 20px;
		height: 20px;
	}
}