.saniport-servicios { background: var(--sp-white); }

.saniport-servicio-card {
	background: var(--sp-white);
	border-radius: var(--sp-radius);
	box-shadow: var(--sp-shadow);
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: transform var(--sp-transition), box-shadow var(--sp-transition);
}
.saniport-servicio-card:hover { transform: translateY(-6px); box-shadow: var(--sp-shadow-hover); }

/* Miniatura estilo eCommerce: foto completa sin recortes, fondo blanco,
   centrada, con la misma altura en todas las tarjetas del grid. */
.saniport-servicio-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 280px;
	padding: 14px;
	background: var(--sp-white);
	overflow: hidden;
}
.saniport-servicio-media img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

@media (max-width: 767px) {
	.saniport-servicio-media { height: 200px; padding: 12px; }
}

.saniport-servicio-icon {
	position: absolute; top: 14px; left: 14px;
	width: 44px; height: 44px;
	background: var(--sp-blue);
	color: var(--sp-white);
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
}

.saniport-servicio-body { padding: 22px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.saniport-servicio-body h3 { font-size: 1.15rem; margin: 0; }
.saniport-servicio-body p { flex: 1; font-size: 0.92rem; }

.saniport-servicio-buttons { display: flex; gap: 10px; }
.saniport-servicio-buttons .btn { flex: 1; padding-left: 10px; padding-right: 10px; }

@media (max-width: 400px) {
	.saniport-servicio-buttons { flex-direction: column; }
}

.saniport-servicio-icon-single {
	display: inline-flex; width: 60px; height: 60px;
	align-items: center; justify-content: center;
	background: var(--sp-blue); color: var(--sp-white);
	border-radius: 50%; margin-bottom: 16px;
}

.saniport-single-servicio .saniport-single-content { margin: 16px 0 26px; }
.saniport-single-servicio .btn { margin-right: 10px; margin-bottom: 10px; }
