
/* ================= ROOT ================= */
.dr1057services {
	padding: 80px 20px;
	background: radial-gradient(circle at top, #071020, #02040a);
	color: #fff;
	font-family: "Segoe UI", sans-serif;
	position: relative;
	overflow: hidden;
}

/* GLOW */
.dr1057services::before {
	content: "";
	position: absolute;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, rgba(0,212,255,0.15), transparent 70%);
	top: -150px;
	left: -150px;
	filter: blur(100px);
}

/* CONTAINER */
.dr1057services-container {
	max-width: 1200px;
	margin: auto;
	position: relative;
	z-index: 2;
}

/* TITLE */
.dr1057services h2 {
	text-align: center;
	font-size: 2.6rem;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #00d4ff, #ffffff, #00d4ff);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/* GRID */
.dr1057services-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 28px;
	align-items: start;
}

/* ================= CARD ================= */
.dr1057service-card {
	border-radius: 18px;
	padding: 22px;
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(0,212,255,0.25);
	backdrop-filter: blur(14px);
	cursor: pointer;
	position: relative;
	overflow: hidden;

	transition: box-shadow 0.35s ease, border-color 0.3s ease, transform 0.3s ease;
}

/* HOVER */
.dr1057service-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 50px rgba(0,212,255,0.25);
}

/* ================= HEAD ================= */
.service-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}

.service-head h3 {
	font-size: 1.15rem;
	font-weight: 600;
}

/* ICON */
.service-head .icon {
	font-size: 1.2rem;
	color: #00d4ff;
	transition: transform 0.35s ease;
}

/* ================= BODY (IMPORTANT) ================= */
.service-body {
	height: 0;
	overflow: hidden;
	opacity: 0;
	transform: translateY(10px);

	transition: height 0.45s ease, opacity 0.35s ease, transform 0.35s ease;
	will-change: height, opacity, transform;
}

/* ACTIVE CARD STYLE */
.dr1057service-card.active {
	border-color: rgba(0,212,255,0.6);
	box-shadow: 0 25px 70px rgba(0,212,255,0.25);
}

/* ICON ROTATION */
.dr1057service-card.active .icon {
	transform: rotate(180deg);
}

/* TEXT */
.service-body p {
	color: #cfd8dc;
	margin-bottom: 10px;
	line-height: 1.6;
}

.service-body ul {
	padding-left: 18px;
	color: #cfd8dc;
	line-height: 1.6;
}

.service-body li {
	margin-bottom: 6px;
}

/* MOBILE */
@media (max-width: 600px) {
	.dr1057services {
		padding: 60px 15px;
	}

	.dr1057services h2 {
		font-size: 1.9rem;
	}
}