html {
	scroll-behavior: smooth;
}
body {
	font-family: 'Inter', sans-serif;
	overflow-x: hidden;
}
.hero-bg {
	background-color: #F0F9FF; /* Light Blue */
	position: relative;
	overflow: hidden;
}
.gradient-text {
	background: linear-gradient(to right, #0EA5E9, #10B981, #0891B2);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.cta-button {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.cta-button:hover {
	transform: translateY(-3px);
	box-shadow: 0 4px 20px rgba(14, 165, 233, 0.3);
}
.card-hover {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-hover:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.blob-container {
	position: relative;
	width: 100%;
	max-width: 400px; 
	aspect-ratio: 1/1;
}
.blob {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: linear-gradient(45deg, #0EA5E9, #10B981, #0891B2, #06B6D4);
	background-size: 400% 400%;
	animation: gradient-swivel 4s ease infinite, blob-animation 8s infinite alternate;
}
.blob-content {
	position: relative;
	z-index: 10;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	text-align: center;
	color: white;
	padding: 2rem;
}
@keyframes gradient-swivel {
	0% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
}
@keyframes blob-animation {
	0% { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; }
	50% { border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%; }
	100% { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; }
}

.section-bg {
	position: relative;
	overflow: hidden;
}

.bg-gradient-1 { background-color: #F9FAFB; }
.bg-gradient-2 { background-color: #F0F9FF; }
.bg-gradient-3 { background-color: #F0FDF4; }
.bg-gradient-4 { background-color: #F5F3FF; }
.bg-gradient-5 { background-color: #FFFBEB; }

.bevel-border {
	border-radius: 0.5rem;
	border: 1px solid #e5e7eb;
	background-color: #f9fafb;
	box-shadow: inset 2px 2px 4px #d1d5db, inset -2px -2px 4px #ffffff;
}
.connect-button {
	animation: pulse-animation 2.5s infinite;
	box-shadow: 0 0 0 0 rgba(14, 165, 233, 0.7);
	background: white;
	border: 1px solid #e5e7eb;
}
@keyframes pulse-animation {
	0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(14, 165, 233, 0.4); }
	70% { transform: scale(1.05); box-shadow: 0 0 0 10px rgba(14, 165, 233, 0); }
	100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(14, 165, 233, 0); }
}
.dropdown:hover .dropdown-menu {
	display: block;
}
.faq-item details > summary::-webkit-details-marker {
	display: none;
}

/* Bubble Animation */
.bubble-wrapper {
	position: relative;
	width: 450px;
	height: 450px;
	margin: 2rem auto;
}
.central-bubble {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 200px;
	height: 200px;
	background: linear-gradient(to right, #0EA5E9, #10B981);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
	text-align: center;
	padding: 1rem;
}
.orbiting-bubble {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100px;
	height: 100px;
	margin: -50px;
	background-color: white;
	border-radius: 50%;
	box-shadow: 0 5px 10px rgba(0,0,0,0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: #0891B2;
	opacity: 0;
	transform: scale(0);
	transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out, box-shadow 0.3s;
}
.orbiting-bubble.visible {
	opacity: 1;
	transform: var(--transform-end) scale(1);
}
.orbiting-bubble.active {
	box-shadow: 0 0 15px 5px #0ea5e9;
	transform: var(--transform-end) scale(1.1);
}
#solution-text {
	transition: opacity 0.5s ease-in-out;
}